Can';似乎无法正确使用PHP名称空间
我正在尝试设置我的自动加载器,正如官方评论中的建议 我的测试环境如下 C:\www\autoload.php(按照顶部评论中的建议进行设置) 或 如果您想知道我为什么要使用此设置,请访问我之前提供的链接并阅读顶部评论:Can';似乎无法正确使用PHP名称空间,php,namespaces,Php,Namespaces,我正在尝试设置我的自动加载器,正如官方评论中的建议 我的测试环境如下 C:\www\autoload.php(按照顶部评论中的建议进行设置) 或 如果您想知道我为什么要使用此设置,请访问我之前提供的链接并阅读顶部评论: 提前感谢。您正在创建以下两个类: Car\Bmw\Bmw Bike\Suzuki\Suzuki 您需要将名称空间声明修改为如下所示的Car和Bike: <?php namespace Car; class Bmw { /* */ } 你能在Bmw.php中的名称空
提前感谢。您正在创建以下两个类:
Car\Bmw\Bmw
Bike\Suzuki\Suzuki
Car
和Bike
:
<?php
namespace Car;
class Bmw { /* */ }
你能在Bmw.php中的名称空间行之前粘贴所有内容吗?@Maerlyn相应地更新了我的原始帖子。确保在@RocketHazmat之前文件中没有空格/BOM似乎有一些空格,我现在已经删除了它,但仍然无法加载类Car\Bmw。。。编辑:更新了我原来的帖子,完全没有空格。谢谢,现在它可以工作了,我一定是在尝试各种随机变化时跳过了这个。
<?php
namespace Car\Bmw;
class Bmw { var $v = 'Hello I am Class : Bmw'; }
<?php
namespace Bike\Suzuki;
class Suzuki { var $v = 'Hello I am Class : Suzuki'; }
<?php
use Car\Bmw;
include 'autoload.php';
$Obj = new Bmw();
var_dump($Obj);
Fatal error: Namespace declaration statement has to be the very first statement in the script in C:\www\Car\Bmw.php on line 3
Fatal error: spl_autoload(): Class Car\Bmw could not be loaded in C:\www\index.php on line 8
<?php
namespace Car;
class Bmw { /* */ }