服务报价 | 域名主机 | 网络营销 | 软件工具| [加入收藏]
 热线电话: 130-5800-8007
当前位置: 主页 > php教程 > php教程 >

php报错:Cannot redeclare class 提示的解决方法

时间:2013-05-09 16:27来源:未知 作者:最模板 点击:
1.重复包含相同的类文件: 例如:对于某个类文件zuimoban.php,在a.php中 view plaincopy to clipboardprint? include zuimoban.php; 在b.php中 view plaincopy to clipboardprint? include a.php; include zuimoban.php; 就会报错

 1.重复包含相同的类文件:

例如:对于某个类文件zuimoban.php,在a.php中
view plaincopy to clipboardprint?
include "zuimoban.php";  
在b.php中
view plaincopy to clipboardprint?
include "a.php";  
include "zuimoban.php";  
就会报错。
解决:将上述的include全部替换为include_once
 
2.在同一个文件中重复声明了两次同名的类:
例如:
view plaincopy to clipboardprint?
<!--?php  
class Foo {}  
  
// some code here  
  
class Foo {}  
?-->  
在第二个 Foo 的地方就会报错。
解决:去掉第二个Foo,或者重命名。
为了防止重复定义,可以在定义一个新的类的时候判断一下这个类是否已经存在:
view plaincopy to clipboardprint?
if(class_exists('SomeClass') != true)  
{  
   //put class SomeClass here  
}
 
3.该类为PHP类库中内置的类。
判断方法:在一个空文件中写入
view plaincopy to clipboardprint?
<!--?php  
class Com  
{  
  
}  
?-->  
这时候提示Cannot redeclare class Com,说明这个类就是PHP内置的类。不能使用。
另外,要避免使用太大众化的类名,比如Com,这个类在Linux使用可能是正常的,在Windows环境却无法运行  
(责任编辑:最模板)
顶一下
(4)
36.4%
踩一下
(7)
63.6%
------分隔线----------------------------
栏目列表
热点内容