在Laravel 5.1 項(xiàng)目中有時(shí)我們會(huì)需要一些不依賴于類的輔助函數(shù)褒纲,通常我們會(huì)將這些輔助函數(shù)定義在一個(gè)單獨(dú)文件如 helpers.php
中昆婿。我們?cè)?app
目錄下創(chuàng)建這個(gè)名為 helpers.php
的文件呼畸,并編輯其內(nèi)容如下:
<?php/** * 返回可讀性更好的文件尺寸 /function human_filesize($bytes, $decimals = 2){ $size = ['B', 'kB', 'MB', 'GB', 'TB', 'PB']; $factor = floor((strlen($bytes) - 1) / 3); return sprintf("%.{$decimals}f", $bytes / pow(1024, $factor)) .@$size[$factor];}/* * 判斷文件的MIME類型是否為圖片 */function is_image($mimeType){ return starts_with($mimeType, 'image/');}
其中 human_filesize()
函數(shù)返回一個(gè)易讀的文件尺寸里初, is_image()
函數(shù)在文件類型為圖片的時(shí)候返回 true
锅睛。
要讓?xiě)?yīng)用能夠正確找到 helpers.php
文件疚膊,還要修改項(xiàng)目根目錄下的composer.json
:
{ ... "autoload": { "classmap": [ "database" ], "psr-4": { "App\": "app/" }, "files": [ "app/helpers.php" ] }, ...}
在 autoload
配置項(xiàng)的 files
數(shù)組中指定要被加載的文件/文件夾义辕。修改完成后記得運(yùn)行 composer dumpauto
確保修改生效:
現(xiàn)在 helpers.php
中的所有函數(shù)都會(huì)載入到自動(dòng)加載器中,你可以在博客應(yīng)用的代碼中任意使用其中的函數(shù)寓盗。