這篇文章主要介紹了thinkphp在php7環境下提示Cannot use 'String' as class name as it is reserved的解決方法,涉及thinkPHP針對php7關鍵字判定的相關底層程式碼修改技巧,需要的朋友可以參考下
本文實例講述了thinkphp在php7環境下提示Cannot use 'String' as class name as it is reserved的解決方法。分享給大家參考,具體如下:
我有一網站之前用php7運行thinkphp沒有什麼問題,但是最近發現開啟驗證碼的時候發現有錯誤
Cannot use 'String' as class name as it is reserved
在google baidu搜尋了一下還是沒有解決方法
於是自己動手解決,看來我是第一個分享出來的人
原因:
有一個類別用了string類別名,php7把String定為關鍵字
解決方法:
##檔案ThinkPHP\Library\Org\Util\Image.class.php找到:import('ORG.Util.String'); $code = String::rand_string($length, 4);修改成:
import('ORG.Util.Stringnew'); $code = Stringnew::rand_string($length, 4);複製檔案:
ThinkPHP\Library\Org\Util\String.class.php儲存成:
ThinkPHP\Library\Org\Util\Stringnew.class.php#開啟Stringnew.class.php:
class String {修改成:
class Stringnew {放上去驗證碼出來了,我搜尋了一下沒有其他地方引用,這個問題解決了
以上是thinkphp在php7環境下提示Cannot use 'String' as class name as it is reserved的解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!