Rumah >pembangunan bahagian belakang >tutorial php >thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法

thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法

不言
不言asal
2018-06-07 10:45:422612semak imbas

这篇文章主要介绍了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 {

放上去验证码出来了,我搜索了一下没有其他地方引用,这个问题解决了

Atas ialah kandungan terperinci thinkphp在php7环境下提示Cannot use ‘String’ as class name as it is reserved的解决方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php优化技巧Artikel seterusnya:PHP几个实用功能