Zend 创始人提议创建 PHP 方言,暂命名为 P++
今日消息,不久前从 Zend 公司离职的 Zeev Suraski 以 PHP 开发组成员的身份提议要创建 PHP 方言,暂命名为 P++。
Zeev 表示,现有的 PHP 继续作为动态语言存在,而他提出的 PHP 方言暂命名为 P++,改成更严格的静态语言。他强调道,P++ 不是 PHP 的分叉。因为两者的代码库完全相同,维护代码库的开发者也会一样。另外,如果你安装了 PHP,那么将安装 P++,反之亦然。…
记录-交流-Web开发知识分享
今日消息,不久前从 Zend 公司离职的 Zeev Suraski 以 PHP 开发组成员的身份提议要创建 PHP 方言,暂命名为 P++。
Zeev 表示,现有的 PHP 继续作为动态语言存在,而他提出的 PHP 方言暂命名为 P++,改成更严格的静态语言。他强调道,P++ 不是 PHP 的分叉。因为两者的代码库完全相同,维护代码库的开发者也会一样。另外,如果你安装了 PHP,那么将安装 P++,反之亦然。…
PHP的新版本的性能是不断增强的,PHP最新版本是PHP7.3,我们来写个脚本,来测试一下PHP的性能如何
#!/usr/bin/env bash test=$(cat << 'eot' $time = microtime(true); $array = []; for ($i = 0; $i < 10000; $i++) { if (!array_key_exists($i, $array)) { $array[$i] = []; } for ($j = 0; $j < 1000; $j++) { if (!array_key_exists($j,…
PHP 7.4增加了预加载(Opcache Preloading)的支持,这一功能可以显著提高PHP程序的运行性能。
它是如何工作的:
简单来说就是把PHP代码完全加载到内存中来达到提升性能的目的。
让我们深入研究一下。…
PHP-DI是用PHP编写的、强大的和实用的、框架无关的依赖注入容器。这是一个关于如何使用PHP-DI和依赖注入的最佳实践指南。
文章来源于PHP-DI,作者:Matthieu Napoli和贡献者。PHP-DI是用PHP编写的、强大的和实用的、框架无关的依赖注入容器。…
php设置samesite cookie,支持所有PHP版本。
PHP 7.3 的setcookie函数已经支持samesite属性,但对于7.3以下版本,可以用以下函数代替:
<?php $options = [ 'expires' => time()+18400, 'domain' => 'localhost', 'httponly' => false, 'samesite' => 'Lax', 'secure' => false, 'path' => '/' ]; function samesite_setcookie($name, $value, array $options) { $header = 'Set-Cookie:'; $header .= rawurlencode($name)…
它们由您的同事开发人员Dave编写。
这些类充满了格式错误,较差的缩进和奇怪的单字母变量。有很多依赖项需要向下滚动几分钟才能逃脱膨胀的构造函数。
Shacking,你打开单元测试以了解它应该如何工作......但它们不存在。恐怖和不幸!
你可以让Dave来到你的办公桌前,对他大喊大叫,你从未见过如此蹩脚的代码,诅咒他和他的家人。…
你是否曾经为大文件上传而苦恼?如果文件上传的过程中,因为某种原因中断了,是否可以从中断的位置继续上传,而不用重新上传整个文件?如果你有这样的困惑,那么请继续阅读下面的内容。
在现代网站应用中,上传文件是非常常见的。在任何语言中,通过使用一些工具,都可以实现文件上传的功能。但是,如果处理大文件上传的需求,还是有点麻烦的。
假如你此时正在上传一个很大的文件,大约一个小时过去了,进度是 90%。突然断网了或者浏览器崩溃了,上传的程序退出,你要再全部重新来过。真的很不爽,对不对?还有更让人郁闷的是,如果你的网速很慢,那么,无论你重来多少次,你都不可能上传成功。…
Socket(套接字)一直是网络层的底层核心内容,也是 TCP/IP 以及 UDP 底层协议的实现通道。随着互联网信息时代的爆炸式发展,当代服务器的性能问题面临越来越大的挑战,著名的 C10K 问题(http://www.kegel.com/c10k.html)也随之出现。幸亏通过大牛们的不懈努力,区别于传统的 select/poll 的 epoll/kqueue 方式出现了,目前 linux2.6 以上的内核都普遍支持,这是 Socket 领域一项巨大的进步,不仅解决了 C10K 问题,也渐渐成为了当代互联网的底层核心技术。libevent 库就是其中一个比较出彩的项目(现在非常多的开源项目都有用到,包括 Memcached),感兴趣的朋友可以研究一下。
由于网络上系统介绍这个部分的文章并不多,而涉及 PHP 的就更少了,所以石头君在这里希望通过《Socket深度探究4PHP》这个系列给对这个领域感兴趣的读者们一定的帮助,也希望大家能和我一起对这个问题进行更深入的探讨。首先,解释一下目前 Socket 领域比较易于混淆的概念有:阻塞/非阻塞、同步/异步、多路复用等。
1、阻塞/非阻塞:这两个概念是针对 IO 过程中进程的状态来说的,阻塞 IO 是指调用结果返回之前,当前线程会被挂起;相反,非阻塞指在不能立刻得到结果之前,该函数不会阻塞当前线程,而会立刻返回。…
下面的列表是最常用的前 100 个 PHP 函数:它们是最常用的 PHP 中自带的函数。
这些函数被命名使用,并从 1 到 100 进行排序。 其他的 4500 个函数现在还没在排名中。 下面频率列表表示在 PHP 代码中使用此函数的频率:参考资料来自于 1900 个 PHP 开源项目。 他们使用了 Exakat static analysis engine 静态分析引擎的 1.2.5 版本进行了审核。平均值是在一个项目中调用此函数的次数。有些函数是被封装使用的,而另一些则是主要函数。
比如说,5 个项目里面有 4 个用到了 count 函数,函数被调用大概 150 次。说明它很流行且被大量使用。…
通过键入以下命令在CentOS和RHEL 7.x服务器上打开EPEL repo:
$ sudo yum install epel-release
图01:在Centos 7上安装epel-release软件包…
近期评论