【问题标题】:'Use' namespace doesn't do anything - PHP“使用”命名空间不做任何事情 - PHP
【发布时间】:2019-07-27 10:49:23
【问题描述】:

所以我得到了以下代码,但由于某种原因,use 语句似乎没有做任何事情。

class Image {
    use \App\Traits\File;

    public static function get()
    {
         $image_url = File::getVersion()
    }
}

引发错误Uncaught Error: Class 'File' not found。但如果我将其更改为$image_url = \App\Traits\File::getVersion(),它会起作用。

有人知道为什么吗?

【问题讨论】:

    标签: php namespaces psr-4


    【解决方案1】:

    我会在Http 文件夹中创建Traits 目录,而不是那样。在里面我创建了文件File。在课堂上,

    use App\Http\Traits\File;
    class Image {
        use File;
        public static function get()
        {
             $image_url = File::getVersion()
        }
    }
    

    以上应该是使用命名空间和特征的正确语法。

    【讨论】:

    • 谢谢,我将use 声明移到了课堂之外,这很有效。你能解释一下Http 文件夹的原因吗?
    • 可以说是laravel默认的文件夹结构。
    • 无论如何,你有你的解决方案。与 laravel 相比,我可以给你答案。 :)
    猜你喜欢
    • 1970-01-01
    • 2011-03-05
    • 1970-01-01
    • 1970-01-01
    • 2019-04-17
    • 2020-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多