更新日志

对绑定的扩展的函数有以下更新。

VersionFunctionDescription
Since 5.0.0get_parent_classThe object parameter is optional if called from the object's method.
Since 5.0cal_info参数calendar作为可选项,缺省时默认值为"所有历法"。
Since 4.3.0easter_dateyear参数可选,缺省的默认值是当年。
 easter_days参数year 可选,缺省默认值是当年。
 easter_days引入参数 method。
Since 4.2.0srandseed 成为可选,省略时会默认使用随机值。
Since 4.0.5get_parent_classIf object is a string, returns the name of the parent class of the class with that name.
prior to 5.3.0get_object_varsIf the object isn't an object, then get_object_vars would return false
Prior to 5.1.3imagecolorallocatealphaReturns -1 if the allocation failed.
prior to 4.2.0get_object_varsIf the variables declared in the class of which the object is an instance, have not been assigned a value, those will not be returned in the array
PHP 7.0.15, PHP 7.1.1get_defined_functions增加 exclude_disabled 参数。
PHP 5.3.2 (PECL OCI8 1.4)oci_set_prefetchBefore this release, rows must be >= 1.
PHP 5.3 (PECL OCI8 1.3.4)oci_set_prefetchBefore this release, prefetching was limited to the lesser of rows rows and 1024 * rows bytes. The byte size restriction has now been removed.
PECL 3.0.0IntlDateFormatter::formatSupport for providing IntlCalendar objects to the datetime parameter was added.
Before 5.1.0get_parent_classIf called without parameter outside object, this function would have returned null with a warning.
8.0.3DOMDocument::getElementsByTagNameNSnamespace is nullable now.
 DOMElement::getElementsByTagNameNSnamespace is nullable now.
 DOMImplementation::createDocumentnamespace is now nullable.
 finfo::__constructmagic_database is nullable now.
 bind_textdomain_codesetcodeset is nullable now. Previously, it was not possible to retrieve the currently set encoding.
 bindtextdomaindirectory is nullable now. Previously, it was not possible to retrieve the currently set directory.
 SoapClient::__setLocationlocation is nullable now.
 SoapVar::__constructtypeName, typeNamespace, nodeName,and nodeNamespace are nullable now.
8.0.0, PECL OCI8 3.0.0OCICollection::appendThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::assignThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::assignElemThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::freeThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::getElemThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::maxThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::sizeThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCICollection::trimThe OCI-Collection class was renamed to OCICollection to align with PHP naming standards.
 OCILob::appendThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::closeThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::eofThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::eraseThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::exportThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::flushThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::freeThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::getBufferingThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::importThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::loadThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::readThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::rewindThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::saveThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::saveFileThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::seekThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::setBufferingThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::sizeThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::tellThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::truncateThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::writeThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::writeTemporaryThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
 OCILob::writeToFileThe OCI-Lob class was renamed to OCILob to align with PHP naming standards.
8.0.0DateInterval::__constructW can be combined with D.
 DateTime::formatPrior to this version, false was returned on failure.
 DateTime::formatThe format character p has been added.
 DateTime::getOffsetPrior to this version, false was returned on failure.
 DateTime::getTimestampThese functions no longer return false on failure.
 DOMImplementation::createDocumentdoctype is now nullable.
 FFI::cdeflib is nullable now.
 FFI::stringsize is nullable now; previously, its default was 0.
 array_columnindex_key 参数指定的列中的对象不再强制转换为字符串,而是会抛出 TypeError。
 array_filtercallback 回调现在可以为空(nullable)。
 bcadd现在 scale 可以为 null。
 bccomp现在 scale 可以为 null。
 bcdiv现在 scale 可以为 null。
 bcmod现在 scale 可以为 null。
 bcmul现在 scale 可以为 null。
 bcpowmodscale is now nullable.
 bcscale现在 scale 可以为 null。
 bcsqrt现在 scale 可以为 null。
 bcsub现在 scale 可以为 null。
 com_event_sinksink_interface is nullable now.
 com_get_active_objectcodepage is nullable now.
 count当 value 参数传入了无效的 countable 类型, count 现在会抛出 TypeError。
 deflate_addcontext expects a DeflateContext instance now; previously, a resource was expected.
 deflate_initOn success, this function returns a DeflateContext instance now; previously, a resource was returned.
 enchant_broker_describebroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_describePrior to this version, the function returned false on failure.
 enchant_broker_dict_existsbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_freebroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_free_dictdictionary expects a EnchantDictionary now; previoulsy, a 资源(resource) was expected.
 enchant_broker_get_dict_pathbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_get_errorbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_initOn success, this function returns an EnchantBroker instance now; previoulsy, a 资源(resource) was retured.
 enchant_broker_list_dictsPrior to this version, the function returned false on failure.
 enchant_broker_list_dictsbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_request_dictOn success, this function returns an EnchantDictionary instance now; previoulsy, a 资源(resource) was retured.
 enchant_broker_request_dictbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_request_pwl_dictOn success, this function returns an EnchantDictionary instance now; previoulsy, a 资源(resource) was retured.
 enchant_broker_request_pwl_dictbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_set_dict_pathbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_broker_set_orderingbroker expects an EnchantBroker instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_adddictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_add_to_sessiondictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_checkdictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_describedictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_describePrior to this version, the function returned false on failure.
 enchant_dict_get_errordictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_is_addeddictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_quick_checkdictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_store_replacementdictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 enchant_dict_suggestdictionary expects an EnchantDictionary instance now; previoulsy, a 资源(resource) was expected.
 exif_read_datarequired_sections 现在可以为空。
 get_resourcestype is nullable now.
 gmp_binomialThis function no longer returns false on failure.
 gmp_exportThis function no longer returns false on failure.
 gmp_importThis function no longer returns false on failure.
 gzgetslength is nullable now; previously, the default was 1024.
 gzwritelength is nullable now; previously, the default was 0.
 html_entity_decodeencoding is nullable now.
 iconv_strposencoding is nullable now.
 iconv_strrposencoding is nullable now.
 imagebmpimage expects a GdImage instance now; previously, a resource was expected.
 imagebmpThe type of compressed is bool now; formerly it was int.
 imagecreatefrombmpOn success, this function returns a GDImage instance now; previously, a resource was returned.
 imagecropimage expects a GdImage instance now; previously, a resource was expected.
 imagecropOn success, this function returns a GDImage instance now; previously, a resource was returned.
 imagecropautoOn success, this function returns a GDImage instance now; previously, a resource was returned.
 imagecropautoimage expects a GdImage instance now; previously, a resource was expected.
 imageflipimage expects a GdImage instance now; previously, a resource was expected.
 imagegetclipimage expects a GdImage instance now; previously, a resource was expected.
 imagegetinterpolationimage expects a GdImage instance now; previously, a resource was expected.
 imagegrabscreenOn success, this function returns a GDImage instance now; previously, a resource was returned.
 imagegrabwindowOn success, this function returns a GDImage instance now; previously, a resource was returned.
 imagegrabwindowclient_area expects a bool now; previously it expected an int.
 imageopenpolygonimage expects a GdImage instance now; previously, a resource was expected.
 imagepalettetotruecolorimage expects a GdImage instance now; previously, a resource was expected.
 imageresolutionresolution_x and resolution_y are now nullable.
 imagescaleOn success, this function returns a GDImage instance now; previously, a resource was returned.
 imagescaleimage expects a GdImage instance now; previously, a resource was expected.
 imagesetclipimage expects a GdImage instance now; previously, a resource was expected.
 imagesetinterpolationimage expects a GdImage instance now; previously, a resource was expected.
 inflate_addcontext expects an InflateContext instance now; previously, a resource was expected.
 inflate_get_read_lencontext expects an InflateContext instance now; previously, a resource was expected.
 inflate_get_statuscontext expects an InflateContext instance now; previously, a resource was expected.
 inflate_initOn success, this function returns an InflateContext instance now; previously, a resource was returned.
 ldap_addcontrols is nullable now; previously, it defaulted to [].
 ldap_add_extcontrols is nullable now; previously, it defaulted to [].
 ldap_bind_extcontrols is nullable now; previously, it defaulted to [].
 ldap_comparecontrols is nullable now; previously, it defaulted to [].
 ldap_deletecontrols is nullable now; previously, it defaulted to [].
 ldap_delete_extcontrols is nullable now; previously, it defaulted to [].
 ldap_exop_passwdcontrols is nullable now; previously, it defaulted to [].
 ldap_listcontrols is nullable now; previously, it defaulted to [].
 ldap_mod_addcontrols is nullable now; previously, it defaulted to [].
 ldap_mod_delcontrols is nullable now; previously, it defaulted to [].
 ldap_mod_replacecontrols is nullable now; previously, it defaulted to [].
 ldap_modify_batchcontrols is nullable now; previously, it defaulted to [].
 ldap_mod_add_extcontrols is nullable now; previously, it defaulted to [].
 ldap_mod_del_extcontrols is nullable now; previously, it defaulted to [].
 ldap_mod_replace_extcontrols is nullable now; previously, it defaulted to [].
 ldap_readcontrols is nullable now; previously, it defaulted to [].
 ldap_renamecontrols is nullable now; previously, it defaulted to [].
 ldap_rename_extcontrols is nullable now; previously, it defaulted to [].
 ldap_sasl_binddn, password, mech, realm, authc_id, authz_id and props are nullable now.
 ldap_searchcontrols is nullable now; previously, it defaulted to [].
 ldap_set_rebind_proccallback is nullable now.
 libxml_use_internal_errorsuse_errors is nullable now. Previously, its default was false.
 mb_chr现在 encoding 可以为 null。
 mb_convert_encoding现在,当 from_encoding 为无效编码时, mb_convert_encoding 会抛出 ValueError。
 mb_convert_encoding现在,当 to_encoding 为无效编码时, mb_convert_encoding 会抛出 ValueError。
 mb_convert_encoding现在 from_encoding 可以传入 null。
 mb_convert_kana现在 encoding 可以为 null。
 mb_encode_numericentity现在 encoding 可以为 null。
 mb_eregThis function returns true on success now. Previously, it returned the byte length of the matched string if a match for pattern was found in string and matches was passed. If the optional parameter matches was not passed or the length of the matched string was 0, this function returned 1.
 mb_ereg_matchoptions is nullable now.
 mb_ereg_replaceoptions is nullable now.
 mb_ereg_replace_callbackoptions is nullable now.
 mb_ereg_searchpattern and options are nullable now.
 mb_ereg_search_initpattern and options are nullable now.
 mb_ereg_search_pospattern and options are nullable now.
 mb_ereg_search_regspattern and options are nullable now.
 mb_eregiThis function returns true on success now. Previously, it returned the byte length of the matched string if a match for pattern was found in string and matches was passed. If the optional parameter matches was not passed or the length of the matched string was 0, this function returned 1.
 mb_eregi_replaceoptions is nullable now.
 mb_get_info参数 type 中的 "func_overload" 和 "func_overload_list" 不再被支持。
 mb_ord现在 encoding 可以为 null。
 mb_regex_encoding现在 encoding 可以为 null。
 mb_regex_set_optionsIf the parameter options is given and not null, the previous options are returned. Formerly, the current options have been returned.
 mb_regex_set_optionsoptions is nullable now.
 mb_scrub现在 encoding 可以为 null。
 mb_str_split现在 encoding 可以为 null。
 mb_str_splitThis function no longer returns false on failure.
 metaphoneThe function returned false on failure.
 mhashkey is now nullable.
 msg_get_queueOn success, this function returns a SysvMessageQueue instance now; previously, a resource was returned.
 msg_receivequeue expects a SysvMessageQueue instance now; previously, a resource was expected.
 msg_remove_queuequeue expects a SysvMessageQueue instance now; previously, a resource was expected.
 msg_sendqueue expects a SysvMessageQueue instance now; previously, a resource was expected.
 msg_set_queuequeue expects a SysvMessageQueue instance now; previously, a resource was expected.
 msg_stat_queuequeue expects a SysvMessageQueue instance now; previously, a resource was expected.
 odbc_columnsschema, table and column are now nullable.
 odbc_errorodbc is nullable now.
 odbc_errormsgodbc is nullable now.
 odbc_execflags was removed.
 odbc_fetch_rowrow is nullable now.
 odbc_procedurecolumnsPrior to this version, the function could only be called with either one or five arguments.
 odbc_proceduresPrior to this version, the function could only be called with either one or four arguments.
 odbc_tablesschema, table and types are now nullable.
 openssl_pkey_new成功时此函数会返回 OpenSSLAsymmetricKey 的实例;在之前版本中,则会返回类似为 OpenSSL key 的 资源(resource)。
 openssl_signprivate_key accepts an OpenSSLAsymmetricKey or OpenSSLCertificate instance now; previously, a 资源(resource) of type OpenSSL key or OpenSSL X.509 was accepted.
 openssl_x509_verifypublic_key accepts an OpenSSLAsymmetricKey or OpenSSLCertificate instance now; previously, a 资源(resource) of type OpenSSL key or OpenSSL X.509 was accepted.
 openssl_x509_verifycertificate accepts an OpenSSLCertificate instance now; previously, a 资源(resource) of type OpenSSL X.509 was accepted.
 pack此函数不再在失败时返回 false 。
 parse_strresult 是必须项。
 sem_acquiresemaphore expects a SysvSemaphore instance now; previously, a resource was expected.
 sem_getThe type of auto_release has been changed from int to bool.
 sem_getOn success, this function returns a SysvSemaphore instance now; previously, a resource was returned.
 sem_releasesemaphore expects a SysvSemaphore instance now; previously, a resource was expected.
 sem_removesemaphore expects a SysvSemaphore instance now; previously, a resource was expected.
 shm_attachsize is nullable now.
 shm_attachOn success, this function returns an SysvSharedMemory instance now; previously, a resource was returned.
 shm_detachshm expects a SysvSharedMemory instance now; previously, a resource was expected.
 shm_get_varshm expects a SysvSharedMemory instance now; previously, a resource was expected.
 shm_has_varshm expects a SysvSharedMemory instance now; previously, a resource was expected.
 shm_put_varshm expects a SysvSharedMemory instance now; previously, a resource was expected.
 shm_removeshm expects a SysvSharedMemory instance now; previously, a resource was expected.
 shm_remove_varshm expects a SysvSharedMemory instance now; previously, a resource was expected.
 shmop_closeshmop expects a Shmop instance now; previously, a resource was expected.
 shmop_deleteshmop expects a Shmop instance now; previously, a resource was expected.
 shmop_openOn success, this function returns an Shmop instance now; previously, a resource was returned.
 shmop_readshmop expects a Shmop instance now; previously, a resource was expected.
 shmop_sizeshmop expects a Shmop instance now; previously, a resource was expected.
 shmop_writeshmop expects a Shmop instance now; previously, a resource was expected.
 shmop_writePrior to PHP 8.0.0, false was returned on failure.
 socket_acceptOn success, this function returns a Socket instance now; previously, a resource was returned.
 socket_addrinfo_bindaddress is an AddressInfo instance now; previously, it was a resource.
 socket_addrinfo_bindOn success, this function returns a Socket instance now; previously, a resource was returned.
 socket_addrinfo_connectOn success, this function returns a Socket instance now; previously, a resource was returned.
 socket_addrinfo_connectaddress is an AddressInfo instance now; previously, it was a resource.
 socket_addrinfo_explainaddress is an AddressInfo instance now; previously, it was a resource.
 socket_addrinfo_lookupOn success, this function returns a array of AddressInfo instances now; previously, an array of resources was returned.
 socket_addrinfo_lookupservice is nullable now.
 socket_connectport 允许为空。
 socket_connectsocket is a Socket instance now; previously, it was a resource.
 socket_create_listenOn success, this function returns a Socket instance now; previously, a resource was returned.
 socket_create_pairpair is a reference to an array of Socket instances now; previously, it was a reference to an array of resources.
 socket_export_streamsocket is a Socket instance now; previously, it was a resource.
 socket_get_optionsocket is a Socket instance now; previously, it was a resource.
 socket_getpeernamesocket is a Socket instance now; previously, it was a resource.
 socket_getsocknamesocket is a Socket instance now; previously, it was a resource.
 socket_import_streamOn success, this function returns a Socket instance now; previously, a resource was returned.
 socket_last_errorsocket is a Socket instance now; previously, it was a resource.
 socket_last_errorsocket is nullable now.
 socket_listensocket is a Socket instance now; previously, it was a resource.
 socket_readsocket is a Socket instance now; previously, it was a resource.
 socket_recvfromsocket is a Socket instance now; previously, it was a resource.
 socket_recvmsgsocket is a Socket instance now; previously, it was a resource.
 socket_sendsocket is a Socket instance now; previously, it was a resource.
 socket_sendmsgsocket is a Socket instance now; previously, it was a resource.
 socket_sendtosocket is a Socket instance now; previously, it was a resource.
 socket_sendtoport is nullable now.
 socket_set_blocksocket is a Socket instance now; previously, it was a resource.
 socket_set_nonblocksocket is a Socket instance now; previously, it was a resource.
 socket_set_optionsocket is a Socket instance now; previously, it was a resource.
 socket_shutdownsocket is a Socket instance now; previously, it was a resource.
 socket_writesocket is a Socket instance now; previously, it was a resource.
 socket_writelength is nullable now.
 socket_wsaprotocol_info_exportsocket is a Socket instance now; previously, it was a resource.
 socket_wsaprotocol_info_importOn success, this function returns a Socket instance now; previously, a resource was returned.
 soundexPrior to this version, calling the function with an empty string returned false for no particular reason.
 sprintf此函数失败时不再返回 false 。
 str_word_countcharacters 可为空(Nullable)类型。
 substr_countlength 可以为空(nullable)。
 vsprintf此函数失败时不再返回 false 。
 ReflectionClass::getConstants添加 filter 。
 ReflectionClass::getReflectionConstantsfilter has been added.
 ReflectionParameter::getDefaultValueThis method now allows getting the default value of parameters of built-in functions and built-in class methods. Previously, a ReflectionException was thrown.
 ReflectionParameter::getDefaultValueConstantNameThis method now allows getting the default values' constant names of built-in functions and built-in class methods. Previously, a ReflectionException was thrown.
 ReflectionProperty::getValueobject is nullable now.
 ReflectionProperty::isInitializedobject is nullable now.
 SimpleXMLElement::asXMLfilename is nullable now.
 SoapClient::__doRequestThe type of oneWay is bool now; formerly it was int.
 SoapClient::__setCookievalue is now nullable.
 SoapServer::handlerequest is now nullable.
 tidy::__constructfilename, config, encoding and useIncludePath are nullable now.
 tidy::parseFileconfig and encoding are nullable now.
 tidy::parseStringconfig and encoding are nullable now.
 tidy::repairFileconfig and encoding are nullable now.
 tidy::repairFiletidy::repairFile is a static method now.
 tidy::repairStringtidy::repairString is a static method now.
 tidy::repairStringconfig and encoding are nullable now.
 tidy::repairStringThis function no longer accepts the useIncludePath parameter.
 XMLReader::getAttributeThis function can no longer return false.
 XMLReader::getAttributeNsThis function can no longer return false.
 XMLReader::lookupNamespaceThis function can no longer return false.
 XMLReader::nextname is nullable now.
 XMLReader::openXMLReader::open is now declared as static method, but can still be called on an XMLReader instance.
 XMLReader::XMLXMLReader::XML is now declared as static method, but can still be called on an XMLReader instance.
 XMLWriter::endAttribute现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endCdata现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endComment现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endDocument现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endDtd现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endDtdAttlist现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endDtdElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endDtdEntity现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::endPi现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::flush现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::flushThis function can no longer return false.
 XMLWriter::fullEndElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::openMemoryThis function returns now an XMLWriter instance on success. Previouly, a 资源(resource) has been returned in this case.
 XMLWriter::openUriThis function returns now an XMLWriter instance on success. Previouly, a 资源(resource) has been returned in this case.
 XMLWriter::outputMemory现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::setIndent现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::setIndentString现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startAttribute现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startAttributeNs现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startAttributeNsprefix is nullable now.
 XMLWriter::startCdata现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startComment现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startDocument现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startDtd现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startDtdAttlist现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startDtdElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startDtdEntity现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startElementNs现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::startPi现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::text现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeAttribute现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeAttributeNs现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeCdata现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeComment现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeDtd现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeDtdAttlist现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeDtdElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeDtdEntity现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeDtdEntitypublicId, systemId and notationData are nullable now.
 XMLWriter::writeElement现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeElementNs现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writePi现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
 XMLWriter::writeRaw现在 writer 需要 XMLWriter 实例, 之前需要的是 resource。
7.4.4proc_open为 other_options 参数增加 create_new_console 选项。
7.4.0array_merge允许不带参数调用,之前版本至少需要一个参数。
 array_merge_recursive允许不传递参数调用,之前的版本中至少需要一个参数。
 get_magic_quotes_gpc该函数已被废弃。
 gzreadThis functions returns false on failure now; previously 0 was returned.
 gzwriteThis functions returns false on failure now; previously 0 was returned.
 hash_algos支持 crc32c。
 idn_to_ascii现在 variant 的默认值为 INTL_IDNA_VARIANT_UTS46 , 而不是已弃用的 INTL_IDNA_VARIANT_2003 。
 idn_to_utf8现在 variant 的默认值为 INTL_IDNA_VARIANT_UTS46 , 而不是已弃用的 INTL_IDNA_VARIANT_2003 。
 imagecropautoThe behavior of imagecropauto() in the bundled libgd has been synced with that of system libgd: IMG_CROP_DEFAULT no longer falls back to IMG_CROP_SIDES and threshold-cropping now uses the same algorithm as system libgd.
 imagecropautoThe default value of mode has been changed to IMG_CROP_AUTO. Formerly, the default value has been -1 which corresponds to IMG_CROP_DEFAULT, but passing -1 is now deprecated.
 implode把参数 glue 放到 pieces 的后面已被废弃(就是不按文档中的顺序传递参数)。
 ldap_control_paged_resultThis function has been deprecated.
 ldap_control_paged_result_responseThis function has been deprecated.
 password_hash现在 algo 参数可支持 string 类型,但为了向后兼容也支持 int 类型。
 password_needs_rehash现在 algo 参数可以支持 string 类型,但为了向后兼容性,同时支持 int 类型。
 preg_replace_callback新增 flags 参数。
 preg_replace_callback_arrayThe flags parameter was added.
 proc_openproc_open 的 cmd 参数现在也允许数组类型。
 proc_open为 other_options 参数增加 create_process_group 选项。
 SQLite3Stmt::bindParamparam now also supports the @param notation.
 SQLite3Stmt::bindValueparam now also supports the @param notation.
7.3.24, 7.4.12tidyNode::isHtmlThis function has been fixed to have reasonable behavior. Previously, almost any node was reported as being an HTML node.
7.3.14, 7.4.2dba_openThe lmdb driver now supports an additional $mapsize parameter.
7.3.0apache_request_headers此函数可用于 FPM SAPI 模式。
 array_push可以只用一个参数来调用此函数,之前版本中至少需要两个参数。
 array_unshift现在可以只用一个参数来调用,之前至少需要两个参数。
 bcmul现在 bcmul 可以按想要的小数点位数返回数字。 而之前,返回的数字会忽略尾随零(trailing decimal zeroes)。
 bcpow现在 bcpow 可以按想要的小数点位数返回数字。 而之前,返回的数字会忽略尾随零(trailing decimal zeroes)。
 bcscale现在 bcscale 不仅可以设置,还可以获取当前的小数点保留位数。 用于设置的时候,现在会返回之前的位数。 之前 scale 是强制的参数, 且 bcscale 总是返回 true。
 compact现在,如果字符串指向的变量未定义,compact 会产生 E_NOTICE 级错误。 在此之前,此类问题会静默忽略掉。
 define废弃了 case_insensitive,并将在 8.0.0 版中移除。
 ftp_nb_fget参数 mode 变为可选参数。 在之前的版本中,这是一个必填参数。
 ftp_nb_fput参数 mode 变为可选参数。 在之前的版本中,这是一个必填参数。
 ftp_nb_getmode 参数变为可选,之前是强制性的。
 ftp_nb_putmode 参数为可选,之前版本中为必填。
 ftp_putmode 参数为可选,之前版本中为必选。
 is_countableis_countable has been added.
 json_decodeJSON_THROW_ON_ERROR options was added.
 json_encodeoptions 参数新增 JSON_THROW_ON_ERROR 常量。
 list支持在数组解构时传引用。
 password_hash增加 PASSWORD_ARGON2ID,支持 Argon2id 密码算法。
 preg_quote字符 # 被增加为需要转义的。
 session_set_cookie_params增加 options 参数, 可以通过传入一个关联数组对各个选项进行设置。 同时,通过使用这个参数还可以对 SameSite cookie 进行设置。
 setcookieAn alternative signature supporting an options array has been added. This signature supports also setting of the SameSite cookie attribute.
 unlink现在 Windows 也可以用 unlink 删除文件句柄还在使用中的文件了,在此之前是无法删除的。 然而,还是无法重新创建文件,需要等到所有句柄都关闭才可以。
 var_exportNow exports stdClass objects as an array cast to an object ((object) array( ... )), rather than using the nonexistent method stdClass::__setState. The practical effect is that now stdClass is exportable, and the resulting code will even work on earlier versions of PHP.
7.3ldap_addSupport for controls added
 ldap_compareSupport for controls added
 ldap_deleteSupport for controls added
 ldap_exopSupport for serverctrls added
 ldap_exop_passwdSupport for controls added
 ldap_listSupport for controls added
 ldap_mod_addSupport for controls added
 ldap_mod_delSupport for controls added
 ldap_mod_replaceSupport for controls added
 ldap_modify_batchSupport for controls added
 ldap_mod_add_extSupport for controls added
 ldap_mod_del_extSupport for controls added
 ldap_mod_replace_extSupport for controls added
 ldap_parse_resultSupport for controls added
 ldap_readSupport for controls added
 ldap_renameSupport for controls added
 ldap_rename_extSupport for controls added
 ldap_searchSupport for controls added
7.2.19, 7.3.6, 7.4.0DatePeriod::__constructrecurrences must be greater than 0 now.
7.2.18, 7.3.5substr_compareoffset 现在可能等于 main_str。
7.2.0bcmod新增参数 scale。
 bcmod现在 num1 和 num2 不会截断成整数。 所以现在 bcmod 的表现更接近 fmod 而不是 % 操作符。
 count当 value 参数传入了无效的 countable 类型, count 现在会产生警告。
 date_parse返回数组的 zone 键现在代表秒,而不是分钟。 并且正负符号已反转,例如:之前是 -120 现在是 7200。
 date_parse_from_formatThe zone element of the returned array represents seconds instead of minutes now, and its sign is inverted. For instance -120 is now 7200.
 exif_read_datafile 参数现在起支持本地文件和流式资源。
 exif_read_data新增了以下 EXIF 格式的支持: Samsung DJI Panasonic Sony Pentax Minolta Sigma/Foveon AGFA Kyocera Ricoh Epson
 gettype现在,已关闭的资源报告为 'resource (closed)'。 此前,已关闭的资源报告为 'unknown type'。
 hash_copy接受的参数以及返回值从资源类型修改为 HashContext 对象类型。
 hash_final接收参数从资源类型修改为 HashContext 对象类型。
 hash_hmac不再支持非加密的哈希函数(adler32,crc32,crc32b,fnv132,fnv1a32,fnv164,fnv1a64,joaat)。
 hash_hmac_file不再支持非加密的哈希函数(adler32,crc32,crc32b,fnv132,fnv1a32,fnv164,fnv1a64,joaat)。
 hash_init当使用 HASH_HMAC 选项的时候,不再支持非加密的哈希函数(adler32,crc32,crc32b,fnv132,fnv1a32,fnv164,fnv1a64,joaat)。
 hash_init返回 HashContext 对象,不再返回资源类型。
 hash_pbkdf2不再支持非加密的哈希函数(adler32,crc32,crc32b,fnv132,fnv1a32,fnv164,fnv1a64,joaat)。
 hash_update接收参数从资源类型修改为 HashContext 对象类型。
 hash_update_file接收参数从资源类型修改为 HashContext 对象类型。
 hash_update_stream接收参数从资源类型修改为 HashContext 对象类型。
 idn_to_asciiINTL_IDNA_VARIANT_2003 已被弃用; 可以使用 INTL_IDNA_VARIANT_UTS46 代替。
 idn_to_utf8INTL_IDNA_VARIANT_2003 已被弃用; 可以使用 INTL_IDNA_VARIANT_UTS46 代替。
 json_decodeJSON_INVALID_UTF8_IGNORE, and JSON_INVALID_UTF8_SUBSTITUTE options were added.
 json_encodeoptions 参数新增 JSON_INVALID_UTF8_IGNORE 和 JSON_INVALID_UTF8_SUBSTITUTE 常量。
 mail现在 additional_headers 参数开始支持 array。
 mb_convert_encoding现在该函数的 string 参数同时能接受 array 类型。 在此之前,仅支持 string。
 number_formatnumber_format 现在无法返回 -0,之前可能返回 -0,因为 number 可能会是 -0.01。
 openssl_pkcs7_verify新增 p7bfilename 参数。
 packfloat 和 double 类型支持大端和小端。
 parse_str不带第二个参数的情况下使用 parse_str 会产生 E_DEPRECATED 警告。
 password_hash增加 PASSWORD_ARGON2I,支持 Argon2i 密码算法。
 preg_match现在 $flags 参数支持 PREG_UNMATCHED_AS_NULL。
 preg_match_all现在 $flags 参数可以支持 PREG_UNMATCHED_AS_NULL。
 proc_nice在 Windows 平台上可用。
 read_exif_data这个函数别名被废弃。
 session_abortThe return type of this function is bool now. Formerly, it has been void.
 session_module_name不允许设置模块名称为 "user"。 在之前的版本中,如果设置为 "user",那么会被静默的忽略到。
 session_namesession_name 函数会检查会话状态, 之前的版本仅仅检查 cookie 状态。 所以,旧版本的 PHP 允许你在调用 session_start 函数之后再调用 session_name 函数, 新版本的 PHP 不再允许这样做了。
 session_resetThe return type of this function is bool now. Formerly, it has been void.
 session_set_cookie_params成功时返回 true, 或者在失败时返回 false。 之前版本中是返回 void 的。
 session_write_closeThe return type of this function is bool now. Formerly, it has been void.
 unpackfloat and double types supports both Big Endian and Little Endian.
 SQLite3::openBlobThe flags parameter has been added, allowing to write BLOBs; formerly only reading was supported.
7.1.5IntlDateFormatter::formatSupport for providing general DateTimeInterface objects to the datetime parameter was added. Formerly, only proper DateTime objects were supported.
7.1.4PDO::sqliteCreateFunctionThe flags parameter has been added.
 SQLite3::createFunctionThe flags parameter has been added.
7.1.0DateInterval::formatThe F and f format characters were added.
 DateTime::setTime新增 microsecond 参数。
 array_rand内部随机化算法已从 libc rand 函数更改为使用 梅森旋转算法(Mersenne Twister) 随机数生成器。
 file_get_contents支持负数 offset。
 getenv现在可以省略 varname 来检索所有环境变量的关联数组 array。
 getopt添加 rest_index 参数。
 grapheme_extractSupport for negative offsets has been added.
 grapheme_striposSupport for negative offsets has been added.
 grapheme_strposSupport for negative offsets has been added.
 hash_algos加入 sha512/224,sha512/256,sha3-224,sha3-256,sha3-384 以及 sha3-512 算法的支持。
 iconv_strposSupport for negative offsets has been added.
 json_decodeAn empty JSON key ("") can be encoded to the empty object property instead of using a key with value _empty_.
 json_encode对 Double 的值进行编码时,使用 serialize_precision 代替 precision。
 json_encodeoptions 参数新增 JSON_UNESCAPED_LINE_TERMINATORS 常量。
 list现在可以指定 list 中的键。 这就可以解构非数字键或者无顺序的数组。
 long2ip参数 proper_address 的类型从 string 改成 integer。
 mb_eregmb_ereg will now set matches to an empty array, if nothing matched. Formerly, matches was not modified in that case.
 mb_ereg_replaceThe e modifier has been deprecated.
 mb_ereg_replaceThe function checks whether string is valid for the current encoding.
 mb_ereg_replace_callbackThe function checks whether string is valid for the current encoding.
 mb_ereg_search_setposSupport for negative offsets has been added.
 mb_eregimb_eregi will now set matches to an empty array, if nothing matched. Formerly, matches was not modified in that case.
 mb_eregi_replaceThe function checks whether string is valid for the current encoding.
 mb_eregi_replaceThe e modifier has been deprecated.
 mb_strimwidth支持负数的 start 和 width。
 mb_stripos支持 offset 使用负数。
 mb_strpos支持负数的 offset。
 openssl_decrypt添加了 tag 和 aad 参数。
 openssl_encrypt增加了 tag、aad、tag_length 参数
 openssl_pkey_new添加了 curve_name 配置参数使得可以创建 EC 密钥。
 session_start当 session_start 执行失败, 无法开始一个会话的时候,会返回 false, 并且不会初始化超级变量 $_SESSION。
 shuffle内置的随机数产生算法从 libc rand 函数改成 梅森旋转伪随机数生成算法。
 str_shuffle内置的随机算法从 libc rand 函数改成了梅森旋转演伪随机数发生算法。
 stripos开始支持负数的 offset。
 strpos开始支持负数的 offset。
 substr_count开始支持负数的 offset 和 length。
 unpackThe optional offset has been added.
 ReflectionType::__toStringReflectionType::__toString has been deprecated.
 SessionHandler::gcPrior to this version, the function returned true on success.
 SessionHandlerInterface::gcPrior to this version, the function returned true on success.
7.1DateTime::__construct微秒部分不再是 '00000' 了,而是真实的微秒数据。
7.0.15,7.1.1pack添加了 “e”,“E”,“g” 和 “G” 代码以启用 float 和 double 的字节顺序支持。
7.0.11iconv_substr如果 str 等长于 offset 个字符, 将返回空字符串。之前的版本里,这种情况是会返回 false 的。
7.0.10SQLite3::__constructThe filename can now be empty to use a private, temporary on-disk database.
7.0.7curl_setopt引入 CURL_HTTP_VERSION_2、 CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE、 CURL_HTTP_VERSION_2TLS、 CURL_REDIR_POST_301、 CURL_REDIR_POST_302、 CURL_REDIR_POST_303、 CURL_REDIR_POST_ALL、 CURL_VERSION_KERBEROS5、 CURL_VERSION_PSL、 CURL_VERSION_UNIX_SOCKETS、 CURLAUTH_NEGOTIATE、 CURLAUTH_NTLM_WB、 CURLFTP_CREATE_DIR、 CURLFTP_CREATE_DIR_NONE、 CURLFTP_CREATE_DIR_RETRY、 CURLHEADER_SEPARATE、 CURLHEADER_UNIFIED、 CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE、 CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE、 CURLMOPT_MAX_HOST_CONNECTIONS、 CURLMOPT_MAX_PIPELINE_LENGTH、 CURLMOPT_MAX_TOTAL_CONNECTIONS、 CURLOPT_CONNECT_TO、 CURLOPT_DEFAULT_PROTOCOL、 CURLOPT_DNS_INTERFACE、 CURLOPT_DNS_LOCAL_IP4、 CURLOPT_DNS_LOCAL_IP6、 CURLOPT_EXPECT_100_TIMEOUT_MS、 CURLOPT_HEADEROPT、 CURLOPT_LOGIN_OPTIONS、 CURLOPT_PATH_AS_IS、 CURLOPT_PINNEDPUBLICKEY、 CURLOPT_PIPEWAIT、 CURLOPT_PROXY_SERVICE_NAME、 CURLOPT_PROXYHEADER、 CURLOPT_SASL_IR、 CURLOPT_SERVICE_NAME、 CURLOPT_SSL_ENABLE_ALPN、 CURLOPT_SSL_ENABLE_NPN、 CURLOPT_SSL_FALSESTART、 CURLOPT_SSL_VERIFYSTATUS、 CURLOPT_STREAM_WEIGHT、 CURLOPT_TCP_FASTOPEN、 CURLOPT_TFTP_NO_OPTIONS、 CURLOPT_UNIX_SOCKET_PATH、 CURLOPT_XOAUTH2_BEARER、 CURLPROTO_SMB、 CURLPROTO_SMBS、 CURLPROXY_HTTP_1_0、 CURLSSH_AUTH_AGENT 和 CURLSSLOPT_NO_REVOKE。
7.0.0assertassert is now a language construct and not a function. assertion can now be an expression. The second parameter is now interpreted either as an exception (if a Throwable object is given), or as the description supported from PHP 5.4.8 onwards.
 currentarray 参数始终通过赋值来传递。之前的版本中,默认通过引用来传值。
 define允许 array 的值。
 dirname添加可选的 levels 参数。
 getrusage此函数现在开始支持 Windows。
 json_decodeRejected RFC 7159 incompatible number formats - top level (07, 0xff, .1, -.1) and all levels ([1.], [1.e1])
 json_decodeAn empty PHP string or value that after casting to string is an empty string (NULL, FALSE) results in JSON syntax error.
 keyarray 现在总是会传值。 在此之前,它会尽可能传引用,否则就传值。
 list字符串无法再被拆包(unpack)。
 listlist 表达式不再可以完全为空。
 list赋值操作的顺序发生了变化。
 mktimeis_dst参数已经被移除。
 openssl_open添加了 iv 参数
 openssl_seal添加 iv 变量。
 session_start新加 options 参数。
 substr如果 string 的字符串长度与 start 相同时将返回一个空字符串。在之前的版本中,这种情况将返回 false 。
5.6.5cryptWhen the failure string "*0" is given as the salt, "*1" will now be returned for consistency with other crypt implementations. Prior to this version, PHP 5.6 would incorrectly return a DES hash.
5.6.0array_fillcount 现在可以是零。 之前 count 必须大于零。
 array_filter添加可选的 mode 标志和常量( ARRAY_FILTER_USE_KEY 和 ARRAY_FILTER_USE_BOTH )
 cryptRaise E_NOTICE security warning if salt is omitted.
 htmlentitiesThe default value for the encoding parameter was changed to be the value of the default_charset configuration option.
 htmlspecialcharsThe default value for the encoding parameter was changed to be the value of the default_charset configuration option.
 json_decodeInvalid non-lowercased variants of the true, false and null literals are no longer accepted as valid input, and will generate warnings.
 ReflectionClass::newInstanceWithoutConstructorAll internal classes can now be instantiated except for those declared final.
5.5.38, 5.6.24, 7.0.9getenv添加 local_only 参数。
5.5.21cryptWhen the failure string "*0" is given as the salt, "*1" will now be returned for consistency with other crypt implementations. Prior to this version, PHP 5.5 (and earlier branches) would incorrectly return a DES hash.
5.5.7getallheaders此函数可用于 CLI server。
5.5.1hex2bin如果输入的字符串是无效的十六进制字符串则抛出一个警告,
5.5.0/PECL 3.0.0IntlDateFormatter::createAn IntlCalendar object is allowed for calendar. Objects of type IntlTimeZone and DateTimeZone are allowed for timezone. Invalid timezone identifiers (including empty strings) are no longer allowed for timezone. If null is given for timezone, the timezone identifier given by date_default_timezone_get will be used instead of ICU?s default.
 IntlDateFormatter::setCalendarIt became possible to pass an IntlCalendar object.
5.5.0emptyempty 现在支持表达式了,而不仅仅是变量。
 ip2longPrior to this version, on Windows ip2long would sometimes return a valid number even if passed a value which was not an (IPv4) Internet Protocol dotted address.
 此函数会生成一个 E_DEPRECATED 错误。
 mysql_list_dbs 函数已废弃,调用时会抛出 E_DEPRECATED 级别的错误。
 函数会抛出一个 E_DEPRECATED 错误。
 mysql_tablename 函数已废弃,调用时会抛出 E_DEPRECATED 级别的错误。
 setrawcookie发送给客户端的 Set-Cookie 头现在会加上 Max-Age 属性。
5.4.43, 5.5.27, 5.6.11escapeshellcmd感叹号会被空格所替换。
5.4.32, 5.5.16ucwords增加了 delimiters 参数。
5.4.8assert增加了参数 description。 description 现在也作为第四个参数提供给 ASSERT_CALLBACK 模式里的回调函数。
 mb_strcutPassing NULL as length extracts all bytes to the end of the string. Prior to this version NULL was treated the same as 0.
 mb_substrlength 传入 NULL,则从 start 提取到字符串的结尾处。 在之前的版本里, NULL 会被当作 0 来处理。
5.4.7parse_url修复了 host 在 协议 省略时的识别。
5.4.4hex2bin如果输入的字符串有多余将抛出异常。 PHP 5.4.0 起字符串将被静默地接受,但是最后的字节会被截断。
5.4.0array_combine(修复)早期版本中如果是空数组就报E_WARNING的错并且返回false。
 array_multisortarray1_sort_flags 增加 SORT_NATURAL 和 SORT_FLAG_CASE 选项。
 date_default_timezone_get不再根据操作系统的信息来推测时区,因为这是不可靠的。
 date_default_timezone_get不再使用 TZ 来推测时区。
 dns_get_record增加了参数raw。
 empty检查非数字的字符串偏移量会返回 true.
 filter_input_array添加 add_empty 参数.
 filter_var_array添加 add_empty 参数。
 get_html_translation_tableThe default value for the encoding parameter was changed to UTF-8.
 get_html_translation_tableThe constants ENT_HTML401, ENT_XML1, ENT_XHTML and ENT_HTML5 were added.
 get_magic_quotes_runtime总是返回 false,因为魔术引号(magic quotes)功能已经从 PHP 中移除。
 getallheaders此函数可用于 FastCGI。 此前仅在PHP以 Apache 模块方式运行时支持。
 htmlentitiesencoding 参数的默认值改成 UTF-8。
 htmlentities增加常量 ENT_SUBSTITUTE、 ENT_DISALLOWED、 ENT_HTML401、 ENT_XML1、 ENT_XHTML、 ENT_HTML5。
 htmlspecialcharsencoding 参数的默认值改成 UTF-8。
 htmlspecialchars增加常量 ENT_SUBSTITUTE、 ENT_DISALLOWED、 ENT_HTML401、 ENT_XML1、 ENT_XHTML、 ENT_HTML5。
 htmlspecialchars_decode增加了 ENT_HTML401、ENT_XML1、 ENT_XHTML 和 ENT_HTML5 等常量。
 http_build_query加入了 enc_type 参数。
 iconv这个版本起,字符非法时候会返回 false,除非在输出字符里指定了 //IGNORE 。 在之前版本,它会返回一部分字符串。
 imagewebp支持把 resource 流作为 to 参数传入。
 isset检查字符的非数字偏移量将会返回 false。
 json_decodeThe options parameter was added.
 json_decodeJSON_BIGINT_AS_STRING, and JSON_OBJECT_AS_ARRAY options were added.
 number_formatThis function now supports multiple bytes in dec_point and thousands_sep. Only the first byte of each separator was used in older versions.
 openssl_decrypt将 raw_output 更改至 options。
 scandirsorting_order now accepts constants. Any nonzero value caused descending order in previous versions.
5.3.9DateTime::createFromFormat新增 format 格式字符串中对于 + 格式字符的支持。
5.3.7cryptAdded $2x$ and $2y$ Blowfish modes to deal with potential high-bit attacks.
5.3.6array_product空数组现在会产生 1,而之前此函数处理空数组会产生 0。
5.3.4get_html_translation_tableThe encoding parameter was added.
 rawurlencode因为 rawurlencode 使用了 EBCDIC,所以波浪线字符不会再被编码。
 strip_tagsstrip_tags ignores self-closing XHTML tags in allowable_tags.
5.3.3openssl_decrypt添加 iv 参数。
 parse_url在 URL 解析失败时将不会产生 E_WARNING 级别的错误。
5.3.2crypt修正了 Blowfish 算法由于非法循环导致的问题,返回“失败”字符串(“*0” 或 “*1”)而不是转而使用 DES 算法。
 crypt基于 Ulrich Drepper 的实现,新增基于 SHA-256 算法和 SHA-512 算法的 crypt。
 flock在文件资源句柄关闭时不再自动解锁。现在要解锁必须手动进行。
5.3.1get_defined_constants仅作用于 Windows:内核常量归类到 Core,之前是 mhash。
5.3.0 起get_classobject 默认参数现在是 null ,所以,现在传入 null 到 object 参数时,和没传参数的结果一样。
5.3.0DateTime::__construct如果 time 参数不是一个有效的 日期/时间格式, 会抛出异常。 在之前的版本中是会发出一个错误。
 DateTimeZone::listIdentifiers添加可选的 what 和 country 参数。
 acoshThis function is now available on all platforms
 array_multisortarray1_sort_flags 增加选项 SORT_LOCALE_STRING。
 array_searchAs with all internal PHP functions as of 5.3.0, array_search returns null if invalid parameters are passed to it.
 asinh此函数在所有平台上均可用
 atanh此函数在所有平台上都可以用了
 call_user_func对面向对象里面的关键字的解析有所增强。在此之前,使用两个冒号来连接一个类和里面的一个方法,把它作为参数来作为回调函数的话,将会发出一个E_STRICT的警告,因为这个传入的参数被视为静态方法。
 call_user_func_array对面向对象里面的关键字的解析有所增强。在此之前,使用两个冒号来连接一个类和里面的一个方法,把它作为参数来作为回调函数的话,将会发出一个E_STRICT的警告,因为这个传入的参数被视为静态方法。
 checkdnsrr这个函数在Windows平台上也可以使用了。
 clearstatcache增加了可选的 clear_realpath_cache 和 filename 参数.
 cryptPHP 现在包含了它自己的 MD5 Crypt 实现,包括标准 DES 算法,扩展的 DES 算法以及 Blowfish 算法。如果系统缺乏相应的实现,那么 PHP 将使用它自己的实现。
 date_default_timezone_set现在会抛出 E_WARNING 而不是 E_STRICT。
 dns_get_record可以是在windows平台上使用这个函数了。
 dns_get_record在此版本之前,如果给参数authns传入值,则必须同时传入addtl的值。
 expm1此函数在所有平台上均可用
 fgetcsv增加了 escape 参数。
 fnmatch此函数开始在 Windows 平台上生效。
 func_get_arg该函数可以在参数列表中使用。
 func_get_argIf this function is called from the outermost scope of a file which has been included by calling include or require from within a function in the calling file, it now generates a warning and returns false. (不知道如何翻译跟好,直接参考例2即可明白)
 func_get_args该函数可以在参数列表中使用。
 func_get_argsIf this function is called from the outermost scope of a file which has been included by calling include or require from within a function in the calling file, it now generates a warning and returns false. (不知道如何翻译跟好,直接参考例2即可明白)
 func_num_argsThis function can now be used in parameter lists.
 func_num_argsIf this function is called from the outermost scope of a file which has been included by calling include or require from within a function in the calling file, it now generates a warning and returns -1.
 get_cfg_varget_cfg_var 被修复,能够返回 "array" 的 ini 选项。
 get_defined_constants内核常量归类为 Core,之前是 internal。在 Windows 上,内核常量归类到 mhash。
 get_object_varsThis function now returns NULL if the object isn't an object.
 getimagesizeAdded icon support.
 getmxrrWindows 平台上也能用这个函数了。
 htmlentities增加常量 ENT_IGNORE。
 htmlspecialchars增加常量 ENT_IGNORE。
 imagecolorclosesthwb在 Windows 平台上可用
 imagefilterPixelation support (IMG_FILTER_PIXELATE) was added.
 ini_get当配置项不存在,之前会返回空字符串,现在会返回 false。
 ini_get_all增加参数 details。
 json_decodeAdded the optional depth. The default recursion depth was increased from 128 to 512
 link该功能在 Windows 平台下开始有效(Vista、 Server 2008 或更高版本)。
 linkinfoWindows 平台上开始可用(Vista、Server 2008 或更高版本)。
 log1p此函数在所有平台上均可用
 mktimemktime now throws E_DEPRECATED notice if the is_dst parameter is used.
 nl2br新增可选的 is_xhtml 参数。在此之前,总是插入 '<br />'。
 openssl_open添加了 method 参数
 openssl_seal添加 method 变量。
 property_existsThis function checks the existence of a property independent of accessibility.
 rawurlencode现在符合了RFC 3986。
 readlink此函数在 Windows 平台下可用(Vista、Server 2008 或更高版本)。
 register_tick_functionTicks are now supported on threaded web server modules.
 session_start如果函数调用失败返回 false, 之前版本返回了 true。
 setlocaleThis function now throws an E_DEPRECATED notice if a string is passed to the category parameter instead of one of the LC_* constants.
 stream_context_create增加了可选参数 params 。
 stream_socket_pair这个函数在windows平台不可用
 stristr新增可选的 before_needle 参数。
 strlenPrior versions treated arrays as the string Array, thus returning a string length of 5 and emitting an E_NOTICE level error.
 strstr新增可选的 before_needle 参数。
 symlink此函数在 Windows 平台上可用(Vista、Server 2008 或更高版本)。
 time_nanosleep至此之后该函数在Windows平台下可用。
 time_sleep_until自此,函数在Windows平台可用。
5.2.11get_defined_constantscategorize 参数现在可以合适得被处理。 在此之前,categorize 被解释为 !is_null($categorize),导致任何非 null 的值会强制常量分类。
5.2.10array_unique修改回 sort_flags 的默认值为 SORT_STRING。
 ip2long再此之前的版本, ip2long 有时会返回即使这不是一个IPV4的标准地址的数字地址。
 natsort用零填充的数字字符串 (例如 '00005')现在本质上会忽略掉填充的前道零。
5.2.9array_unique增加可选选项sort_flags,默认值 SORT_REGULAR。 5.2.9 之前,此函数内部使用 SORT_STRING 排序。
5.2.6fopen增加了选项 'c' 和 'c+'
5.2.5addcslashesThe escape sequences \v and \f were added.
 imagefilterAlpha support for IMG_FILTER_COLORIZE was added.
5.2.4checkdnsrr增加了TXT的记录类型。
 stream_wrapper_register添加 flags 参数.
5.2.3getimagesizeRead errors generated by this function downgraded to E_NOTICE from E_WARNING.
 htmlentities增加参数 double_encode。
 htmlspecialchars增加参数 double_encode。
 json_decodeThe nesting limit was increased from 20 to 128
 PDOStatement::getColumnMetatable 字段
5.2.2 - 5.2.6substrIf the start parameter indicates the position of a negative truncation or beyond, false is returned. Other versions get the string from start.
5.2.2ftp_ssl_connect以前版本中,如果无法使用 SSL 连接,将会返回一个非 SSL 的连接, 在 5.2.2 版本中修改为返回 false
 phpinfo增加了“已加载的配置文件”信息,之前只存在“配置文件路径(php.ini)"。
 proc_terminate之前的版本被用来销毁进程 resource。
 token_get_allLine numbers are returned in element 2
5.2.1json_decodeAdded support for JSON decoding of basic types.
 memory_get_peak_usage使用此函数无需在编译时加上 --enable-memory-limit 选项。
 memory_get_usage不需要在编译时使用 --enable-memory-limit 选项就能够使用这个函数。
 mt_srandThe Mersenne Twister implementation in PHP now uses a new seeding algorithm by Richard Wagner. Identical seeds no longer produce the same sequence of values they did in previous versions. This behavior is not expected to change again, but it is considered unsafe to rely upon it nonetheless.
5.2.0base64_decode增加了 strict 。
 curl_multi_info_readmsgs_in_queue被加入。
 imagettftextIt is now possible to specify an hexadecimal entity in text.
 mb_strrpos增加了可选参数 offset。
 memory_get_peak_usage添加参数 real_usage。
 memory_get_usage增加了参数 real_usage。
 openssl_verify添加了 signature_alg 参数。
 pathinfo添加了常量 PATHINFO_FILENAME。
 session_get_cookie_params在返回数组中加入 “httponly”。
 session_set_cookie_params加入 httponly 参数。
 setrawcookie增加了 httponly 参数。
 PDOStatement::executeinput_parameters 中的键名必须和 SQL 中声明的相匹配。PHP 5.2.0 之前默认忽略。
5.1.3curl_getinfo引入CURLINFO_HEADER_OUT.
 get_headers自 PHP 5.1.3 起本函数使用默认的流上下文,其可以用 stream_context_get_default 函数设定和修改。
 http_build_query方括号也会被转义。
5.1.2date_default_timezone_set本版本开始验证 timezone_identifier 参数。
 http_build_query加入了参数 arg_separator。
 parse_url增加了参数 component。
5.1.1dateformat 参数标准的可用日期/时间格式常量见: 常量
5.1.0ctype_digit在 PHP 5.1.0 之前,当 text 是一个空字符串的时候,该函数将返回 true 。
 date时间戳的有效取值范围为 GMT 时间的 1901 年 12 月 13 日至 GMT 时间的 2038 年 1 月 19 日。 (32 位有符号整数的取值范围)。 但是,在 PHP 5.1.0 之前的版本,在某些系统(例如 Windows)上有效取值范围为 1970 年 1 月 1 日至 2038 年 1 月 19 日。
 date现在发布 E_STRICT 和 E_NOTICE 时区错误。
 date_sunrise现在发布 E_STRICT 和 E_NOTICE 时区错误。
 date_sunset现在发布 E_STRICT 和 E_NOTICE 时区错误。
 file_put_contents添加了对 LOCK_EX 的支持和 data 参数处理 stream 资源的功能。
 gettimeofday增加了参数 return_float。
 imagerotate新增: ignore_transparent 。
 localtime现在发布 E_STRICT 和 E_NOTICE 时区错误。
 mktimeis_dst 参数被废弃。出错时函数返回 false 而不再是 -1。修正了本函数可以接受年月日参数全为零。
 mktime现在发布 E_STRICT 和 E_NOTICE 时区错误。
 mktimeWhen called with no arguments, mktime throws E_STRICT notice. Use the time function instead.
 stream_get_contents增加参数 offset 。
 strftime现在发布 E_STRICT 和 E_NOTICE 时区错误。
5.0.0apache_get_modules可用于Apache 1或PHP Apache 2 filter API。 在此之前, 只可用于 Apache 2 handler API。
 apache_get_version可用于 Apache 2 filter API.
 checkdnsrr增加了AAAA的记录类型。
 fgetss参数 length 从 此开始可选。
 file_put_contentsAdded context support
 is_executableis_executable 开始可用以于 Windows。
 jdtojewish增加了参数 fl。
 opendirpath 支持 ftp:// URL wrapper
 socket_create增加 AF_INET6 支持。
 strip_tagsstrip_tags 变为二进制安全的。
 strrpos参数 needle 可以是一个多字符的字符串。
 strrpos引入 offset 参数。

User Contributed Notes

There are no user contributed notes for this page.