PHP

令人期待的 PHP7.4

PHP 7.4 是下一个 PHP 7 的次要版本,预计将于 2019 年 11 月 28 日发布到 General Availability。让我们来了解下 PHP 7.4 新增的功能,这些新功能将使 PHP 更快,更可靠。

当然,更令我期待是 PHP 8。因为 JIT 的一些提议,已经获得批准,这可能成为 PHP 的又一个里程碑。…

PHP 7.4 FFI(外部函数接口):您需要知道的

PHP外部函数接口:FFI,是一个PHP扩展,允许您轻松地将一些外部库包含到PHP代码中。这意味着可以直接在PHP中使用C,Go,Rust等共享库​​,而无需在C中编写PHP扩展。这个概念在其他语言(如Python或Go)中已经存在多年了。

UUID生成

让我们从一个小例子开始:UUID生成。

使用PHP,有几种生成UUID的方法。最好的方法是使用PECL UUID扩展名。您可以在GitHub上阅读其代码。这个PHP扩展负责将PHP函数绑定到libuuid。要使其正常工作,您必须在系统上安装libuuid(不必担心,几乎总是这样)和PECL。

这就是我们从PHP用户代码调用uuid_create()时发生的情况:

+---------------------+
   |    your PHP code    |
   +---+-------------^---+
       v             ^
   +---v-------------+---+
   |     PHP engine      |
   +---+-------------^---+
       v             ^
   +---v-------------+---+
   |      UUID ext       |
   +---+-------------^---+
       v             
    

PHP 7.4中的类型化属性

类型化类属性已在PHP 7.4中添加,并为PHP的类型系统提供了重大改进。这些更改是完全可选的,并且不破坏以前的版本。

在本文中,我们将深入研究该功能,但首先让我们首先总结最重要的要点:

  • 它们自PHP 7.4起可用,该版本于2019年11月发布。
  • 他们只在类 上使用,并且需要访问修饰符:publicprotectedprivate; 或var
  • 允许所有类型,除了voidcallable

他们的实际情况是这样的:…

    

从PHP7.0 升级到PHP7.4

一.新功能

1.可空类型

现在,可以通过在类型名称前面加上问号来将参数和返回值的类型声明标记为可为空。这表示和指定的类型一样,NULL可以分别作为参数传递或作为值返回。

function test(?string $name)
{
var_dump($name);
}

上面的$name 可为字符串或null.

2.void函数

引入了void返回类型。以void声明为返回类型的函数必须完全省略其return语句,或者使用空的return语句。NULL不是void函数的有效返回值。

 function swap(&$left, &$right): void
{
if ($left === $right) {
return;
}$tmp = $left;
$left = $right;
$right = $tmp;
}
    

PHP框架最新性能压力测试比较

有人说PHP性能低?go语言性能高?到底谁高谁低数据说话!我们就来实际对比一下各PHP框架及一款go语言框架的性能是怎样的。

硬件: CPU:Intel(R) Xeon(R) CPU E5-2689 0 @ 2.60GHz 16核心。内存:16GB。

操作系统:Ubuntu 18.04

PHP版本:7.4

压力测试命令: ab -n 100000 -c 1000 -k $url

PHP框架最新输出hello world压力测试结果:

框架 版本 方式 web服务器 RPS 最高日/PV
laravel 8.x web nginx 1000  8640w
                

PHP解密:zym加密 带乱码调试过程

欢迎阅读我的另一篇文章:PHP解密:魔方1代 PHP加密中的VMProtect分析,文中对 本贴 73# 层 提供的文件进行了分析

案例 1

实验样本

http://www.phpjiami.com/

据说“加密效果同行最高”?

到 http://www.phpjiami.com/phpjiami.html 随意上传一个 php 文件,然后下载加密后的文件,这就是我们要解密的文件。

    

Zend 创始人提议创建 PHP 方言,暂命名为 P++

今日消息,不久前从 Zend 公司离职的 Zeev Suraski 以 PHP 开发组成员的身份提议要创建 PHP 方言,暂命名为 P++

Zeev 表示,现有的 PHP 继续作为动态语言存在,而他提出的 PHP 方言暂命名为 P++,改成更严格的静态语言。他强调道,P++ 不是 PHP 的分叉。因为两者的代码库完全相同,维护代码库的开发者也会一样。另外,如果你安装了 PHP,那么将安装 P++,反之亦然。…