在Laravel 5.1 项目中有时我们会需要一些不依赖于类的辅助函数,通常我们会将这些辅助函数定义在一个单独文件如 helpers.php
中。我们在 app
目录下创建这个名为 helpers.php
的文件,并编辑其内容如下:
<?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()
函数返回一个易读的文件尺寸, is_image()
函数在文件类型为图片的时候返回 true
。
要让应用能够正确找到 helpers.php
文件,还要修改项目根目录下的composer.json
:
{ ... "autoload": { "classmap": [ "database" ], "psr-4": { "App\": "app/" }, "files": [ "app/helpers.php" ] }, ...}
在 autoload
配置项的 files
数组中指定要被加载的文件/文件夹。修改完成后记得运行 composer dumpauto
确保修改生效:
现在 helpers.php
中的所有函数都会载入到自动加载器中,你可以在博客应用的代码中任意使用其中的函数。