Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用composer autoload自动加载类映射_Php_Composer Php_Autoload - Fatal编程技术网

Php 使用composer autoload自动加载类映射

Php 使用composer autoload自动加载类映射,php,composer-php,autoload,Php,Composer Php,Autoload,目录: myproject: src: MyProject: Foo: Foo.php 在文件autoload_namespaces.php中 return array( 'MyProject' => array($vendorDir . '/myproject/src'), ); 如果你看起来像这样: class Bar extends MyProjext\Foo\Foo { } // You may n

目录:

myproject:
   src:
      MyProject:
           Foo:
              Foo.php
在文件autoload_namespaces.php中

return array(
    'MyProject' => array($vendorDir . '/myproject/src'),
);
如果你看起来像这样:

class Bar extends MyProjext\Foo\Foo
{

}
// You may need to adjust the path
require_once("MyProject/Foo/Foo.php");

class Bar extends Foo
{

}
或:

它正在工作,但我不想使用'use MyProjext\Foo\Foo;'或“扩展MyProjext\Foo\Foo”

class Bar extends Foo
{

}
这是一个错误:“找不到Foo类”,有人可以帮我吗?

你说:

它正在工作,但我不想使用'use MyProjext\Foo\Foo;'或 '扩展MyProjext\Foo\Foo'

class Bar extends Foo
{

}
这意味着这项工作:

use MyProject\Foo\Foo;

class Bar extends Foo
{

}
但这不起作用(你想让它起作用):

它不起作用,因为类
Bar
试图从全局范围扩展类
Foo
,但是类
Foo
MyProject\Foo
下声明,并且它存储在
MyProject/Foo
目录中,因此发生了错误,并且符合逻辑

如果要使用此代码(不带任何
命名空间
):

然后确保类
Foo
在全局命名空间中可用,并找到类似
namespace MyProject\Foo的行Foo
类声明之前添加code>,删除该行,并在使用类
Foo
创建类
栏之前(通过扩展)包含该类。所以,它可能看起来像这样:

class Bar extends MyProjext\Foo\Foo
{

}
// You may need to adjust the path
require_once("MyProject/Foo/Foo.php");

class Bar extends Foo
{

}

使用
名称空间
更好,因此请尝试坚持使用它,如果不使用
名称空间
您当前的
自动加载
技术可能会失败,除非您在不使用
名称空间

的情况下重写它,
条的名称空间是什么
类?类条没有名称空间,就像在laravel中一样,类BaseController扩展了控制器,类BaseController没有名称空间,类控制器名称空间是从