在准备建站的时候,就有考虑使用php8来建站,不过当时需要操作的比较多,而且并没有确定好会使用什么主题,插件等,目前虽然WordPress官方已经支持php8,但是仍有不少国内的主题插件等等还不是默认支持php8,也就是如果要使用的话,需要自己debug。
关于php8官方对php8的描述是“性能更好,语法更好,类型安全更完善”,
个人觉得性能的提升才是最吸引我的。
之前使用的是php7.4+ZendOPcache+Memcached+WPRocket来优化性能。
为了更快,于是选择更新php8,启用了JIT的php8速度可以说是碾压全部旧版本的,虽然做不到像我爱水煮鱼博客那样的极致优化,但是嘛,这种东西越快越好。
更新升级php8本站是使用了宝塔面板,所以备份站点之类的会比较方便。
一定要提前备份好站点,这个很重要,避免出现问题无法恢复。
宝塔面板还是比较懒人化的,直接通过应用商店安装php8.0,建议选择编译安装,编译安装和极速安装的区别在零基础建站1.本地搭建服务器环境以及宝塔面板这篇文章中有说明。
安装时间较长,根据服务器性能决定,安装好之后不要直接切换php版本,先安装好php拓展,避免切换版本后服务器环境出现问题。
之前php版本安装了什么拓展,切换版本之前就都装好,之后尝试切换版本。
如果站点的插件或者主题不兼容,会出现报错,提示你在哪个文件的哪一行有语法错误,百度对应的错误来查找解决方式。
例如本站的一个插件出现了这个问题
Arrayandstringoffsetaccesssyntaxwithcurlybracesisnolongersupport
解决办法也很简单,将对应报错的文件的对应行内花括号{}更改为[]即可。
例如:
若代码逻辑中含有类似
asc=ord(s{0})*+ord(s{1})-;
需要修改成
asc=ord(s[0])*+ord(s[1])-;
由于各个站点存在主题,插件等不同,具体的版本之间区别报错也需要百度对应的解决方式。
关于这点需要根据对应的报错来解决。
总结PHP8对于网站速度的提升还是非常明显的,不过也需要对应的主题插件支持,也要有一定的能自己解决问题的能力。
不过还是要尽量避免过度优化,免得后续出现一大堆乱七八糟的问题。
#php#