php5升php7代碼修改整理


 

1. 為什么升級至php7

 

  a.安全需要
    過早以至於不維護的php版本難免會有未修補的漏洞,安全性要求較高的行業是要及時升級的。
  b.性能提升(開啟opcache hugepage)
    據說性能提升一倍,那升級后使用的服務器資源就會減少,間接產生經濟效益。
  c.效率提升
    流行的php框架之所以流行,那是實實在在的提升了開發人員的開發速度,有些框架是不支持php較低版本的(如laravel)。

 

2. 如何升級至php7

 

  a.環境升級

    這個不過多介紹,網上搜 升級 php7,一大堆講解的都是怎么講卸載 安裝 php的。

    需要注意的是升級之前要記錄舊版php安裝的擴展,是否有自定義擴展,php.ini php-fpm.conf 配置文件記得備份保存。

  b.代碼升級

    主要說下php7版本升級后,代碼需要變更。因為不是把php環境一升級就可以了,php7廢棄了一些不安全,使用混亂,或者性能低下的函數,統一了一些規范。我們項目中如果使用了這些函數,就要修改替換。

   

    我怎么知道我的代碼中那些函數廢棄了呢?一個一個搜索出來替換?

    看看這兩個開源的php兼容性檢測工具

    php7cc  性能快,使用簡便,但是原作者4年前已不維護,此版是我增加了php7.0-php7.3 廢棄函數檢測的fork版本。

      使用方法,composer安裝后 執行下php命令就行了,如下:顯示了 文件位置,出錯行數,錯誤原因,(下圖是php7不支持文件名同名的構造函數報錯)

      

 

    php7mar   這個未測試效果

 

    有了檢測工具,我們就可以一邊修改一邊檢測,直至沒有錯誤報告產生,是不是有點TDD的趕腳。

 

    具體改動函數參考下面這篇整理很好的文章:

    一篇寫給准備升級PHP7的小伙伴的文章

 

參考:

https://blog.csdn.net/weixin_34072857/article/details/91840761

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM