【发布时间】:2017-12-28 09:35:13
【问题描述】:
我使用 Laravel 5.4 并想自动加载一个 helpers.php 文件,其中包含我想在整个项目中使用的辅助函数(尤其是在我的控制器中)。
我的 composer.json 看起来像这样:
{
"name": "laravel/laravel",
"description": "The Laravel Framework.",
"keywords": ["framework", "laravel"],
"license": "MIT",
"type": "project",
"require": {
"php": ">=5.6.4",
"laravel/framework": "5.4.*",
"laravel/tinker": "~1.0"
},
"require-dev": {
"fzaninotto/faker": "~1.4",
"mockery/mockery": "0.9.*",
"phpunit/phpunit": "~5.7"
},
"autoload": {
"files": [
"app/Http/helpers.php"
],
"classmap": [
"database"
],
"psr-4": {
"App\\": "app/"
}
},
"autoload-dev": {
"files": [
"app/Http/helpers.php"
],
"psr-4": {
"Tests\\": "tests/"
}
},
"scripts": {
"post-root-package-install": [
"php -r \"file_exists('.env') || copy('.env.example', '.env');\""
],
"post-create-project-cmd": [
"php artisan key:generate"
],
"post-install-cmd": [
"Illuminate\\Foundation\\ComposerScripts::postInstall",
"php artisan optimize"
],
"post-update-cmd": [
"Illuminate\\Foundation\\ComposerScripts::postUpdate",
"php artisan optimize"
]
},
"config": {
"preferred-install": "dist",
"sort-packages": true,
"optimize-autoloader": true
}
}
我的 helpers.php 看起来像:
<?php
namespace App\Http;
function combineColumnNameType($columnLabels, $columnTypes) {
$combined = [];
// logic
return $combined;
}
我的问题是,当我尝试在我的一个控制器中使用 helpers.php 函数时,它会抛出以下错误消息:
Call to undefined function App\Http\Controllers\combineColumnNameType()
我尝试composer dump-autoload 几次,但没有帮助。
我也试过composer update。
有什么问题?
【问题讨论】:
标签: php laravel composer-php