【问题标题】:Require_once In laravel在 laravel 中需要一次
【发布时间】:2015-08-08 03:07:58
【问题描述】:

我的网站有一个插件,我复制了文件夹结构并重命名了文件,我尝试以与加载原始插件相同的方式加载我在 global.php 文件中创建的新插件

//load plugins
if(File::exists(public_path('plugins/releasedate/protected/start.php')))
{
File::requireOnce(public_path('plugins/releasedate/protected/start.php'));
}   

但是当我添加其他插件时

//load plugins
if(File::exists(public_path('plugins/releasedate/protected/start.php')))
{
File::requireOnce(public_path('plugins/releasedate/protected/start.php'));
}

if(File::exists(public_path('plugins/streaming/protected/start.php')))
{
File::requireOnce(public_path('plugins/streaming/protected/start.php'));
}

它加载的只是第一个插件。或者我可以在我的脚本中只使用一个 requireOnce 吗?

【问题讨论】:

  • 如果你翻转 ifs 的顺序,streaming 插件会加载吗?
  • 是的,是一样的,插件会加载,但不会加载其他的
  • 您将插件代码(尤其是 PHP)放在可公开访问的位置 (public_path) 的任何特殊原因?
  • 我使用的是购买的脚本,devolper 为这个脚本创建了一个插件,我认为这就是原因。
  • 插件如果我同时使用两者都不能正常工作,则已发布的仪表板控制器不再工作。我用更多描述更新我的问题

标签: php laravel require-once


【解决方案1】:

试试:

$plugins = array(
    public_path('plugins/releasedate/protected/start.php'),
    public_path('plugins/streaming/protected/start.php')
);

foreach($plugins AS $plugin) {
    if(!is_file($plugin)) {
        die("NO FILE: ".$plugin);
    }

    require_once($plugin);
}

【讨论】:

    【解决方案2】:

    我在没有插件文件夹和 start.php 文件的情况下合并了我的文件,一切似乎都很好。谢谢大家

    【讨论】:

      猜你喜欢
      • 2015-09-17
      • 2017-05-29
      • 1970-01-01
      • 2011-12-13
      • 2018-04-23
      • 1970-01-01
      • 1970-01-01
      • 2014-01-25
      • 2012-09-17
      相关资源
      最近更新 更多