1、php5.4升级到php8提示 Cannot acquire reference to $GLOBALS 前面&去掉
2、Array and string offset access syntax with curly braces is no longer supported
PHP 7.4 引入了一项变更,不再支持使用花括号 {} 来访问数组和字符串的偏移量。这种语法在 PHP 7.4 及更高版本中被废弃,且在 PHP 8 中被移除。
3、strpos(): Passing null to parameter #1 ($haystack) of type string is deprecated
在 PHP 8 中,如果你调用 strpos(null, ...), 会触发一个 E_WARNING 级别的错误,表示传递给 $haystack 的值不再被视为字符串。
4、Call to undefined function Think\imagecreate()
开启gd库
5、从 PHP 7.2 开始,create_function() 函数已经被弃用,PHP 8 不再支持。官方文档在 PHP 7.2 版本的更新中标记了这个函数为过时(deprecated)。可用以下方法代替
正则匹配,匹配到后将“UCS-2BE”格式转化为UTF-8格式
function func_decode_unicode($str)
{
return preg_replace_callback('/\\\\u([0-9a-f]{4})/i',
function ($matches) {
return mb_convert_encoding(pack('H*', $matches[1]), 'UTF-8', 'UCS-2BE');
},
$str
);
}
6、php8一个函数如果有设置多个变量,有默认值的变量必须在最后
7、升级jquery,可用$.fn.juery检验版本
8、php.ini中expose_php = On;改为Off
9、# 隐藏 Apache 版本信息
ServerTokens Prod
ServerSignature Off