前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在Laravel之外使用illuminate组件详解

如何在Laravel之外使用illuminate组件详解

作者头像
用户8826052
修改2021-07-14 14:27:15
1.4K0
修改2021-07-14 14:27:15
举报
文章被收录于专栏:编程乐园编程乐园

当代框架基本都是有组件构成,这使得框架变得更加灵活/

/。The Laravel Components | github Laravel 中有不少优质组件,那如何在 Laravel 之外使用 illuminate 组件呢?

illuminate/validation

以 illuminate/validation 为例,validation 有丰富的数据验证功能。

在项目的 composer.json 文件中添加:

...

"require": {

...

"illuminate/validation": "^5.8",

...

从 Laravel-Lang/lang 项目中复制需要的语言文件放到自己的项目中。

例如:在 Yii2 项目中,复制对应语言文件到项目中的 assets/lang/zh-CN/validation.php。

创建 common/Validator.php:

namespace appcommon;

use Illum/

/inateFilesystemFilesystem;

use IlluminateTranslationFileLoader;

use IlluminateTranslationTranslator;

use IlluminateValidationFactory;

class Validato

{

private static $instance = null;

private function __construct()

{

}

public static function getInstance(): Factory

{

if (null === static::$instance) {

$translationPath = get_alias('@assets/lang');

$translationLocale = 'zh-CN';

$transFileLoader = new FileLoader(new Filesystem(), $translationPath);

$translator = new Translator($transFileLoader, $translationLocale);

static::$instance = new Factory($translator);

}

return static::$instance;

}

}

在全局函数文件添加:

//

// $rules = [

// 'name' => 'required|string|min:2|max:5',

// 'code' => 'required|string|min:2|max:5',

// ];

function validator(array $data, array $rules, array $messages = [], array $customAttributes = [])

{

return appcommonValidator::getInstance()->make($data, $rules, $messages, $customAttributes);

}

测试使用:

$rules = ['name' => 'required|numeric'];

$customAttributes = ['name' => 'My name'];

$messages = ['name.required' => 'A name is required',];

$validator = validator($data, $rules, $customAttributes, $messages);

if ($validator->fails()) {

$errors = $validator->errors()->all();

Response::error(Errors::ParamsInvalid, implode(',', $errors), $errors);

}

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档