index.php
/类型自动加载:PSR-4,带有用于目录控制器的命名空间/
require_once "app/start.php";
$a=new Appcontrollercreate();
$a->xadd();
作曲家.json
索引文件的内容如下
{
"require": {
},
"autoload": {
"files": [
"config.php"
],
"classmap": [
"app/models"
],
"psr-4": {
"App\":"app"
}
}
}
创建.php
创建.php文件的内容如下
<?php
namespace Appcontroller;
use Appcontrollerportxredis as ssff;
class create extends ssff{
function xadd()
{
xlocalhost();
echo("create a new post");
}
function xremove(){
echo "create a remove post";
}
}
端口.php
端口.php文件的内容如下
<?php
namespace Appcontrollerport;
class xredis{
public function xlocalhost()
{
echo "host ip 127.0.0.1";
}
public function xport()
{
echo "port is 33767";
}
}
?>
下面的错误消息显示
致命错误:在 中找不到类"应用程序\控制器\端口\xredis" C:\laragon\www\php\autoload-class\app\controller\create.php 在第 4 行
Appcontrollerport
中找到文件,请将port.php
重命名为xredis.php
。
否则,如果文件在 Appcontroller
中找到,请将类重命名为 port
并从命名空间中删除port
。以下示例。
应用\控制器\端口.php
namespace Appcontroller;
class port { /** ... */ }
App\controller\port\xredis.php
namespace Appcontrollerport;
class xredis { /** ... */ }
PSR-4 自动加载要求文件名与类名匹配。
终止类名对应于以 .php 结尾的文件名。文件名必须与终止类名的大小写匹配。
http://www.php-fig.org/psr/psr-4/