laravel自定义模板的具体流程包括什么
Admin 2022-07-25 群英技术资讯 830 次浏览
在实际应用中,我们有时候会遇到“laravel自定义模板的具体流程包括什么”这样的问题,我们该怎样来处理呢?下文给大家介绍了解决方法,希望这篇“laravel自定义模板的具体流程包括什么”文章能帮助大家解决问题。
在框架中想要让操作变得简洁,对于命令的熟练调用是必不可少的。说到自定义的命令,那么tojs无疑是非常好的选择。同时对于js语言的切换上也是速度非常快的。下面我们就laravel框架中tojs这种自定义的命令带来详细的介绍,大家也快来看看实际的使用中都会遇到哪些流程吧。
1、创建ToJsServiceProvider
namespace App\Providers;
use App\Helpers\ToJs\ToJs;
use Illuminate\Support\Facades\Blade;
use Illuminate\Support\ServiceProvider;
class ToJsServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
//
}
/**
* Register the application services.
*
* @return void
*/
public function register()
{
$this->app->singleton('tojs', function () {
return new ToJs();
});
/*
* The block of code inside this directive indicates
* the chosen javascript variables.
*/
Blade::directive('tojs', function () {
return '';
});
}
}
2、ToJs方法主要是对数组的一些操作
namespace App\Helpers\ToJs;
use Illuminate\Support\Arr;
class ToJs
{
protected $data = [];
public function put(array $data)
{
foreach ($data as $key => $value) {
$this->data[$key] = value($value);
}
return $this;
}
public function get($key = null, $default = null)
{
if (!$key) return $this->data;
return Arr::get($this->data, $key, $default);
}
public function forget($keys)
{
Arr::forget($this->data, $keys);
return $this;
}
}
3、声明facade
namespace App\Helpers\ToJs\Facades;
use Illuminate\Support\Facades\Facade;
class ToJsFacade extends Facade
{
/**
* Get the registered name of the component.
*
* @return string
*/
protected static function getFacadeAccessor()
{
return 'tojs';
}
}
4、在config数组添加serviceProvider
providers 添加
\App\Providers\ToJsServiceProvider::class
aliases 添加
'ToJs' => \App\Helpers\ToJs\Facades\ToJsFacade::class,
5、为了方便调用可以在写一个helper方法
if (!function_exists('to_js')) {
/**
* Access the javascript helper.
*/
function to_js($key = null, $default = null)
{
if (is_null($key)) {
return app('tojs');
}
if (is_array($key)) {
return app('tojs')->put($key);
}
return app('tojs')->get($key, $default);
}
}
在PHP代码需要的地方调用 to_js(['username'=>'test']);
blade模板直接通过 @tojs 就可以在页面渲染出。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要为大家介绍了PHP试题之RCEService正则回溯解答,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
PHP中有很多关于数组的函数,方便数组操作。数组能够在单个变量中存储多个值;数组是一个能在单个变量中存储多个值的特殊变量。
JSON数据格式相比xml的解析难度较低,配合Ajax技术的使用使得前端获取数据,呈现数据非常方便,所以下面这篇文章主要给大家介绍了关于PHP如何将数据库查询结果输出为json格式的相关资料,需要的朋友可以参考下
在php5的对象编程经常提到的一个关键点是“默认情况下对象是通过引用传递的”。但其实这不是完全正确的。下面通过一些例子来说明。php的引用是别名,就是两个不同的变量...
这篇文章主要介绍了Yii框架自定义数据库操作组件,结合实例形式分析了Yii自定义数据库操作组件的原理与实现方法,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008