OOP PHP - 从扩展类调用方法,而不必为它放置类

时间:2017-01-09 19:30:05

标签: php laravel oop

我在类文件中有一个类:

class foo
{
    public function something()
    {
        return "something"
    }
}

然后在另一个文件中我有一个类:

class bar extends foo
{

}

现在我想调用一些方法。 我可以像foo::something();这样做,但我想做something()。就像它在Laravel中一样。

当然我可以require foo所在的文件,但我不想这样,因为我认为那有点脏。

那么,我该怎么做? 我在互联网上环顾四周但没找到答案。我发现它是从5 - 7年前开始的。

编辑:

看,您只需返回view();

没有self::this->

我想知道你是怎么做到的。 IN VANILLA PHP

public function index()
{

    $categories = Category::categories();
    $posts = Post::latest()->get();

    return view('welcome', compact('posts', 'categories'));
}

1 个答案:

答案 0 :(得分:2)

这些功能称为全局帮助程序。你可以create your own Laravel helpers in custom helpers file。 Helper可以是某些类方法或simle函数的包装器:

if (! function_exists('customHelper')) {
    function customHelper()
    {
        return 'Something';
    }
}

要自定义帮助程序文件工作,请将其添加到应用程序composer.json的自动加载部分并运行composer dumpauto命令一次:

"autoload": {
    ....
    "files": [
        "app/someFolder/helpers.php"
    ]
},