我想创建一个可以被所有控制器调用的函数
public function getSuffix($filename) {
$first_char = substr($filename, 0 ,1);
$sec_char = substr($filename, 1 ,1);
$suffix ="";
if($first_char!='.' && $first_char!='..')
$suffix .= '/'.$first_char.'/';
if($sec_char!='.' && $sec_char!='..')
$suffix .= $sec_char.'/';
return $suffix;
}
做这件事的最佳做法是什么?助手类是我正在搜索的吗?
在app/http文件夹中创建一个helpers.php文件。然后你的composer.json文件自动加载这个文件。
"autoload": {
"classmap": [
"database"
],
"psr-4": {
"App\": "app/"
},
"files": [
"app/Http/helpers.php"
]
},
然后运行composer dump autoload,问题就解决了
首先,您需要在CustomFolder等应用程序中创建文件夹,并在SimpleClass.php 等自定义文件夹中创建助手类
<?php
namespace AppCustomFolder;
class SimpleClass {
public function yourFunction(){
return true;
}
}
?>
当你在控制器中使用这个助手类时,简单地添加名称空间,比如
<?php
use AppCustomFolderSimpleClass;
class MyController extends Controller{
}
?>
我认为你的助手课做得很好。
创建基类
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
class BaseController extends Controller
{
public function __construct()
{
//do some stuff
}
public function myFunction()
{
}
}
并用这个基类扩展您的所有类。