## 函数的变化

### PHP 内核

- 如果省略 `salt` 参数，crypt() 会产生 `E_NOTICE`错误。
- substr_compare() 的 `length` 参数现在接受 `0` 的值。
- unserialize() will now fail if passed serialised data that has been manipulated to attempt to instantiate an object without calling its constructor.

### cURL

- 只有设置 `CURLOPT_SAFE_UPLOAD` 为 `false` 的情况下， 才接受 `@file` 语法上传文件。 最好使用 CURLFile 代替。

### Mcrypt

- mcrypt_create_iv() 的 `source` 现在默认值是 `MCRYPT_DEV_URANDOM`，而非 `MCRYPT_DEV_RANDOM`。

### OpenSSL

- 如果 SSL 上下文选项已经提供 `crypto_type` 选项， stream_socket_enable_crypto() 可以忽略 `crypto_type` 参数。

### PostgreSQL

- pg_insert()、pg_select()、 pg_update()、pg_delete() 不再是实验性质的。
- 如果数据库连接 socket 流设置为非阻塞（non-blocking）模式， pg_send_execute()、 pg_send_prepare()、pg_send_query() 、pg_send_query_params() 不再会阻塞查询直到写入完成。

### Reflection

- ReflectionClass::newInstanceWithoutConstructor() 现在允许非 Final 的内部类实例化。

### XMLReader

- 和 XMLReader::getAttribute() 一样，未找到属性的情况下， XMLReader::getAttributeNs() 和 XMLReader::getAttributeNo() 会返回 `null` 。

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open