1. 程式人生 > >laravel技巧-多語言提示、公用函式引入、url忽略大小寫

laravel技巧-多語言提示、公用函式引入、url忽略大小寫

建立一個laravel5.1專案easy_grouping。
 composer create-project laravel/laravel easy_grouping 5.1.*

1.多語言提示

在resources-lang目錄下新建目錄zh-cn,建立tip.php,內容如下
<?php
return ['200'=>'操作成功'];
修改config/app.php
'locale' => 'zh-cn',
在介面中
echo trans('tip.200');
輸出“操作成功”

2.引入公用函式

在app目錄下建立Helper目錄,建立common_functions.php,內容如下
<?php
function test()
{
echo 'common funciton include succeed';
}
在composer.json中增加
"autoload": {
    "files": [
      "app/Helper/common_funtions.php"
    ]
  }
命令列中執行
composer dump-autoload
test()函式就可全域性使用了。

3.url忽略大小寫

在上面建立的Helper資料夾下,建立CaseInsensitiveUriValidator.php,內容如下
<?php namespace App\Helper;

use Illuminate\Http\Request;
use Illuminate\Routing\Route;
use Illuminate\Routing\Matching\ValidatorInterface;

class CaseInsensitiveUriValidator implements ValidatorInterface
{
    public function matches(Route $route, Request $request)
    {
        $path = $request->path() == '/' ? '/' : '/'.$request ->path();
        return preg_match(preg_replace('/$/','i', $route->getCompiled()->getRegex()), rawurldecode($path));
    }
}
在routes.php中引入
use Illuminate\Routing\Route as IlluminateRoute;
use App\Helper\CaseInsensitiveUriValidator;
use Illuminate\Routing\Matching\UriValidator;

$validators = IlluminateRoute::getValidators();
$validators[] = new CaseInsensitiveUriValidator;
IlluminateRoute::$validators = array_filter($validators, function($validator) {
    return get_class($validator) != UriValidator::class;
});


相關推薦

laravel技巧-語言提示公用函式引入url忽略大小寫

建立一個laravel5.1專案easy_grouping。 composer create-project laravel/laravel easy_grouping 5.1.* 1.多語言提

C++:11---虛擬函式虛擬函式純虛擬函式(抽象類介面)

 介紹虛擬函式之前,先舉一個繼承中的例項 class A { public: void show()const {cout<<"A";}; }; class B:public A //B繼承於A { public: void show()cons

Laravel 新增多語言提示資訊

Laravel預設的locale用的是en,在resouces/lang/en資料夾下,我們可以看到以下幾個檔案:resources - lang - en -- auth.php -- paginati

函式函式判定Jensen 不等式

最近看到 EM 演算法,其中的證明有用到琴生不等式,在這裡做一個筆記。 在剛開始學習凸函式和凹函式的時候,我們會被凸函式和凹函式的命名所困擾,命名看起來是凹的,一些教材上卻偏偏說它是凸函式。其實這個只是一個定義,它叫什麼,並不影響函式本身的性質。就像我在 B 站

[介面管理平臺] eoLinker AMS 專業版 V3.5 :加入資料結構管理通用函式管理API 快速測試等近 30 項更新

eoLinker AMS是集API文件管理、API自動化測試、開發協作三位一體的綜合API開發管理平臺,是中國最大的線上API管理平臺。目前eoLinker AMS已經為來自全球的超過兩萬家企業託管超過一百萬的API,我們感謝每個曾經以及正在支援我們的企業以及開發者朋友,並對你們致以最誠摯的

#java 一個簡單的例子理解java繼承成員函式重寫型別轉換

一個簡單的例子理解java繼承、成員函式重寫、型別轉換 1、繼承簡介 舉一個簡單的例子:筆分為很多種,比如毛筆、鋼筆、圓珠筆等等,這些筆都有一些相同的屬性比如長度、筆跡的粗細等等;但他們也有不同的特點,比如他們的用途(毛筆可以寫對聯、鋼筆可以寫作業等等)等。這時

JS面向物件基礎講解(工廠模式建構函式模式原型模式混合模式動態原型模式)

什麼是面向物件?面向物件是一種思想!(廢話)。   面向物件可以把程式中的關鍵模組都視為物件,而模組擁有屬性及方法。這樣我們如果把一些屬性及方法封裝起來,日後使用將非常方便,也可以避免繁瑣重複的工作。接下來將為大家講解在JS中面向物件的實現。    工廠模式   工廠模式是軟體工程領

MYSQL基礎上機練習題(二)對資料指定列查詢條件查詢查詢結果排序聚集函式查詢分組統計查詢

實驗目標:1.掌握指定列或全部列查詢2.掌握按條件查詢3.掌握對查詢結果排序4.掌握使用聚集函式的查詢5.掌握分組統計查詢一、請完成書中實驗7.1,並完成以下問題。1.查詢所有學生的姓名及其出生年份回答以下問題:SQL語句請截圖① 觀察查詢的資料,若年齡不為空是否能求出出生年

Matlab影象矩陣旋轉翻轉函式 rot90flipudfliplrimrotateflipdimflip詳解

函式說明rot90(A,k)功能:將矩陣(圖片)旋轉90度引數:A——待操作矩陣,k——旋轉k*90度詳解:將矩陣A旋轉k個90度,即旋轉90,180,270。一維二維矩陣如只旋轉90 度亦可用轉置('

拉格朗日乘子法函式乘子罰函式

本文簡單總結一些相關概念,具體證明以後再補充; 1. 拉格朗日乘子法 2. 罰函式法:外罰函式與內罰函式法 3. 廣義乘子法 1. 拉格朗日乘子法 1.1 無約束問題 無約束問題,定義為 minf(x)minf(x)

工廠模式建構函式模式原型模式範例

/** * Created by chen on 2015/10/29. */ //工廠模式 function createPerson(name,age,job){ var o = n

關於舉辦註冊電氣公用設備道路環保和結構工程師執業資格考試考前沖刺班的通知

工程師 課程 北京 資格考試 設備 單位 培訓 華夏 政策 關於舉辦註冊電氣、公用設備、道路、環保和結構工程師執業資格考試考前沖刺班的通知 ? 2019年勘察設計工程師考前輔導方案 專 業 級 別 周 末 班開課日期 連 續 班開課日期 課 時 沖刺班學費(

SQL SERVER使用OpenRowset,OpenDataSource函式匯入匯出資料到Excel 的幾種方法(整理)

一、如我在D盤下有D:/物件編碼.xls檔案,有工作表名Sheet是中文命名為‘辦公用品編碼’,‘零件編碼’。        select * into #temp  fromopendatasource('Microsoft.Jet.OLEDB.4.0', 'Excel

Excel函式公式:IF函式和ANDOR函式的組合條件判斷技巧

經常使用Excel函式的小夥伴們都知道,在Excel中使用頻率最高的還是那些比較簡單的函式,其中IF函式就是高頻率函式之一,那麼,能不能用IF函式來進行多條件運算呢? 一、IF+AND:同時滿足多個條件 目的:將“上海”地區的“男”通知標識為“Y”。 方法: 在目標單元格中輸入公式:=IF(AND(D

R語言函式使用技巧(迴圈if族/forswitchrepeatifelsestopifnot)

每每以為攀得眾山小,可、每每又切實來到起點,大牛們,緩緩腳步來俺筆記葩分享一下吧,please~———————————————————————————後續加更內容:應用一:if族有哪些成員呢?——if/ifelse/stopifnot應用二:如何在迴圈中,實時輸出時間消耗?—

C語言宏定義技巧——次包括頭文件內容不同

ear 文件 我們 art bsp enum class 包括 nbsp 1、 頭文件定義例如以下: /* declears in “funcs.h” */ FUNC_1(ID_FUN1_001) FUNC_1(ID_FUN1_002) FUNC_2(ID_FUN2_

Qt跨平臺(windowlinux)實現語言

linx this delet set 就是 body http mes else    在項目中,實現多語言基本山是基本需求,雖然Qt支持跨平臺,但在linux和windows上實現多語言的方式還是細微區別的,廢話不多說,直接進入主題吧。   Qt實現多語言,是用過QTr

php 語言(UTF-8編碼)導出ExcelCSV亂碼解決辦法之導出UTF-8編碼的ExcelCSV

csv tex 完整 多語 繁體 HP 項目 .html agen 轉自: https://www.cnblogs.com/kclteam/p/5278926.html 新項目,大概情況是這樣的:可能存在多國、不同語種使用者,比喻有中文、繁體中文,韓文、日本等等,開發

C語言函式宣告形參實參

函式原型: 原型prototype是函式的宣告;描述了函式的返回值與引數;  函式原型說明了兩點: 1、該函式的返回值 2、該函式的引數及其型別 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 函式的引數: 引數到底是什

C++中的動態型別與動態繫結虛擬函式執行時型的實現【轉】

(轉自:https://blog.csdn.net/iicy266/article/details/11906509) 動態型別與靜態型別 靜態型別          是指不需要考慮表示式的執行期語