繁体   English   中英

PHP扩展第一类文件夹返回

[英]PHP Extending Class one Folder Back

我有一个基础抽象类,说Base.php位于/lib/Helper/Base.php 现在,我有另一个类,说Awesome.php位于/lib/Helper/Awesome/Awesome.php ,这个类需要扩展Base

我定义了我的命名空间如下:

Base.php

<?php namespace Helper;

abstract class Base
{

}

Awesome.php

<?php namespace Helper\Awesome;

class Awesome extends Base
{

}

现在,这表示未找到Base类。 我试图使用require_once和/或将其includeBase.php的路径中,但它们也没有起作用。 我究竟做错了什么?

您将包括该文件,这是正确的事情。 但是您也在使用名称空间。

名称空间不是文件夹,这意味着名称空间“ Helper”不是文件夹,而是逻辑层次结构。 为了使用类Base在他的逻辑命名空间HelperAwesome类需要完整的逻辑路径,即扩展基类\\Helper\\Base

    namespace Helper\Awesome;

class Awesome extends \Helper\Base {

}

或改用use/as关键字(如c# using语句)。

  namespace Helper\Awesome;
use \Helper\Base as Base;
class Awesome extends Base
{

}

更多信息可以在php.net网站上找到。 这是直接参考: http : //php.net/manual/zh/language.namespaces.importing.php

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM