我有ClsMapping类。当我使用
include_once('Folder/ClsMapping.php');
它有效,但是当我使用
时use Folder/ClsMapping
$obj = new ClsMapping();
$obj->a();
它不起作用。我也在ClsMapping.php文件中定义了命名空间 在ClsMapping.php中
namespace Folder;
class ClsMapping{
function a(){
}
}
我怎么能让它运作起来?任何帮助都会很棒。
错误
Fatal error: Class 'ClsMapping' not found in E:\xampp\htdocs\ppm2.0\elastic\ClsSearchElastic.php on line 247
答案 0 :(得分:0)
我不确定,但我想问题是" ClsMapping.php",没有命名空间,或者现有命名空间是错误的。
可以肯定的是,去你的班级" ClsMapping.php",然后在php标签之后编写你的命名空间(例如" namespace Folder;")。
之后,您可以使用文件夹/ ClsMapping"没有问题。
答案 1 :(得分:0)
使用不包含任何内容。它只是将指定的命名空间(或类)导入当前范围
不要将use运算符与自动加载混淆。通过注册自动加载器(例如使用spl_autoload_register)自动加载类(无需包含)。您可能希望阅读PSR-4以查看合适的自动加载器实现。