我已经创建了一个自定义新文件app / Http / Helpers.php并添加了:
<?php
namespace app\Http;
class ConnectionsHelper {
public static function organisation($id) {
return 'ID:'.$id;
}
}
在Composer.json中,我在自动加载块中添加了:
"files": [
"app/Http/Helpers.php"
]
然后我跑了“composer dump-autoload”。
我的控制器:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
use Auth;
use App\Http\Requests;
use App\Http\Controllers\Controller;
class myController extends Controller
{
public function index()
{
echo ConnectionsHelper::organisation(2);
}
}
得到回报:
FatalErrorException in OrganisationsController.php:
Class 'App\Http\Controllers\ConnectionsHelper' not found
答案 0 :(得分:3)
您需要在控制器中提供命名空间别名。
use App\Http\ConnectionsHelper
自动加载文件并不意味着该文件中的类是必需的/包含在应用程序中的所有其他脚本中。它只是意味着您正在将这些文件提供给您的应用。在这种情况下,您的帮助文件已经在App
命名空间内,默认情况下会自动加载,因此您可以完全删除composer.json的files
位。