如何在简单的php文件中使用laravel模型?

时间:2017-10-14 19:12:32

标签: php laravel laravel-5

我想创建一个可以在控制器内部调用的函数,所以我想在App文件夹中创建一个.php文件并在控制器中使用它,但是如何在控制器中写入该文件。

文件的示例内容:

<?php

function sendNotification(icon, text, userID)
{


}

?>

我是这样写的吗??

<?php

    function sendNotification(icon, text, userID)
    {
      $var = new Notifications;
      $var->notificationText = "string";
      $var->save();

    }

    ?>

3 个答案:

答案 0 :(得分:2)

1 app/Http目录中,创建一个helpers.php文件并添加您的功能。

2 composer.json内,在自动加载功能块中,添加

"files":["app/Http/helpers.php"]

3 运行composer dump-autoload.

helpers.php添加你的功能:

<?php
    /**
     * @param $icon
     * @param $text
     * @param $userID
     */
    function sendNotification($icon, $text, $userID)
    {
        $var                   = new \App\Notifications();
        $var->notificationText = "string";
        $var->save();
    }
?>

然后,您只需在控制器/或您的laravel应用程序中的任何位置调用您的功能sendNotification($icon, $text, $userId)

答案 1 :(得分:0)

您只需在底部添加功能即可。例如:

public function myAwesomeFunction(){
    $this->helperFunction();
}


private function helperFunction(){
    echo "I'm a helper function";
}

正如@ Leo's建议您,您可以创建一个名为helpers.php的文件,并将其包含在Controller中,以使所有内容井然有序。

答案 2 :(得分:0)

好吧这应该不是问题..你的控制器基本上只是用普通的php文件编写的类。所以你也可以创建自己的。

现在,您可以创建具有您的功能的文件,也可以创建具有您的功能的类的文件。让我们采取第一种方法。

  1. 所以现在只需在你的文件中创建一个helper.php文件 app/<your directory name>目录。
  2. 在您的文件中添加内容,例如使用您模型的函数[或类]。

  3. 在此文件中为use添加model语句。

  4. 通过将composer.json文件编辑为

    ,告诉作曲家您的文件

    “files”:[             “应用程序/” ]

  5. 致电composer-dumpautoload为您生成自动加载器。

  6. 在某些文件调用函数中使用函数/类。

  7. 例如。     1)app \ helper.php

        <?php
        use App\User;
    
        function helper()
        {
            $user = User::find(1);
            dd($user);
        }
    

    2)app \ controller \ testController.php

    function test()
      {
       dd(helper());
      }
    

    3)composer.json

    "files" : [
                "app\\helper.php"
            ]