写了一个类且使用了命名空间:`
namespace a\b;
class demo extends xxx{
……
}`
在另一个文件中使用:`
use a\b\demo;
$d = new demo();
`
提示:xxx类找不到。
我自己的类使用了命名空间,继承的xxx类是属于第三方的类库,第三方类库并没有使用命名空间,使用的是require_once文件包含。
我不知道这个问题怎么去解决,把第三方类库全改成命名空间形式的不太现实,总不能每当使用到第三方时都这么做吧,工程量很大。
回复内容: 写了一个类且使用了命名空间:`
namespace a\b;
class demo extends xxx{
……
}`
在另一个文件中使用:`
use a\b\demo;
$d = new demo();
`
提示:xxx类找不到。
我自己的类使用了命名空间,继承的xxx类是属于第三方的类库,第三方类库并没有使用命名空间,使用的是require_once文件包含。
我不知道这个问题怎么去解决,把第三方类库全改成命名空间形式的不太现实,总不能每当使用到第三方时都这么做吧,工程量很大。
a.php
'; }}
c.php
'; }}
b.php
out();
大概是这个意思吧?
如果第三方类没有设置命名空间,php默认会加上一个顶级命名空间'\'的
顺便注意文件的加载顺序
class demo extends \xxx
1.xxx 类以及这个类里面需要用到的类必须加namespace
2.代码必须修改:
namespace a\b;use 路径/路径/xxx; //此处必须将xxx继承的class 使用use操作符导入进来class demo extends xxx{……}`
这两个条件缺一不可!!!