我已经按照一些教程创建了一些用于刀片视图的全局助手函数。
我已经在App\Helper文件夹中创建了ViewHelpers.php文件。此文件包含以下代码:
<?php
class ViewHelpers {
public static function bah()
{
echo 'blah';
}
}
这是我的服务提供商,它加载我的助手(目前只有一个文件):
<?php namespace App\Providers;
use Illuminate\Support\ServiceProvider;
class HelperServiceProvider extends ServiceProvider {
public function register()
{
foreach (glob(app_path().'/Helpers/*.php') as $filename){
echo $filename; // for debugging - yes, I see it is getting called
require_once($filename);
}
}
}
我已将其添加到“提供者”部分的config\app.php中:
'App\Providers\HelperServiceProvider',
现在我在刀片视图中调用我的助手:
{{ViewHelpers::bah()}}
就目前而言,它运行良好。
但是如果我将我的ViewHelper命名空间更改为:
<?php namespace App\Helpers;
class ViewHelpers {
// omitted for brevity
即使ViewHelpers类位于不同的命名空间中,如何使视图也能看到它?我在哪里添加使用应用程序\助手
?
另一个相关的问题-我是否可以为ViewHelper类创建一个别名,使其在我的视图中看起来像VH: bah()
?
如果可能的话,我更喜欢用简单的方式来做(没有门面什么的),因为这些只是静态助手,不需要类实例和IoC。
我正在使用Laravel 5。
您将获得未找到的类“ViewHelpers”
,因为没有ViewHelpers
,存在App\Helpers\ViewHelpers
,并且您需要指定命名空间(即使在视图中)。
您可以在config/app.php
中注册别名,这将允许您使用VH::某物()
:
'aliases' => [
// in the end just add:
'VH' => 'App\Helpers\ViewHelpers'
],
如果你的命名空间是正确的,你甚至不必使用提供者-类将由Laravel加载。
我正在尝试在Laravel 5.6中创建一个自定义帮助器 我的助手路径是app\Helpers\ReadExcel。php 以下是我的助手文件: 我的助手的服务提供商如下 在: 我尝试在控制器方法中使用帮助器,如下所示: 我得到的错误如下: 找不到类“ReadExcel” 请帮我这个。我不确定错在哪里。
我在中有一些助手类。如何使用
我正在尝试将管道分隔字符串转换为xml,这很好。但是,我没有得到我在下面展示的实际输出。在我的输出中,父标记与包名一起生成,它也没有生成我想要的名称空间。你能帮我把平面文件转换成我期望的精确输出吗。 CamelConfig。JAVA ConverterRoute。JAVA 来源txt Test.java 输出 测验xml 预期产量 测验xml
我正在尝试为我的Laravel(5.2)API项目设置单元测试。在使用单元测试之前,我想为它们定义一个自定义名称空间,因此我创建了文件。像这样: 然后,我创建了一个文件夹下的文件夹,并将我的单元测试放在该文件夹与以下命名空间: 现在,当我想运行单元测试时,我得到以下错误: 所以基本上,Laravel认为在Test命名空间中可以找到类,而不是Laravel的命名空间。 我还在文件: 我也尝试过运行这
本文向大家介绍thinkphp autoload 命名空间自定义 namespace,包括了thinkphp autoload 命名空间自定义 namespace的使用技巧和注意事项,需要的朋友参考一下 使用thinkPHP过程中,一些自定义的类库和第三方类库需要找一个合适的位置放置,放到系统默认的org文件夹感觉不太好,破坏了thinkPHP的原生目录。 就看了一下官方手册,可以在模块或者应用的