我希望在laravel项目中将一个具有两个函数的外部类整数。该外部类用于电子支付。
我在\ App中创建了一个名为 xxx 的新文件夹,然后是名为 xxx.php 的php文件。
我的道路是
\App\xxx\xxx.php
当我想使用以下代码在 XController 中调用此类时:
<?php
namespace App\Http\Controllers;
use App\xxx\xxx;
class XController extends Controller
{
public function Send(Request $request){
$function = new xxx;
};
}
出现错误:找不到类'App \ xxx \ xxx'
我的xxx.php代码是这样的:
<?php
namespace App;
class xxx
{
public function function($data)
{
return ;
}
}
我的路线:
Route::get('/send', 'XController@Send');
提前谢谢!
答案 0 :(得分:2)
更正类文件Xxx.php
中的命名空间
<?php
namespace App\Xxx;
class Xxx
{
public function function($data)
{
return ;
}
}
并在控制台中运行此命令
composer dump-autoload
答案 1 :(得分:2)
Laravel使用PSR-4自动加载功能,因此您应确保将类和文件夹大写。您可以在此处阅读有关PSR-4的更多信息-https://www.php-fig.org/psr/psr-4/
在您的情况下,文件夹应为Xxx
而不是xxx
,文件的名称应为Xxx
而不是xxx
。
同时,您还需要更新Xxx.php
文件上的名称空间:
<?php
namespace App\Xxx;
class Xxx
{
public function function($data)
{
return ;
}
}
然后,您可以在控制器中更新use语句和方法。
<?php
namespace App\Http\Controllers;
use App\Xxx\Xxx;
class XController extends Controller
{
public function Send(Request $request){
$function = new Xxx;
}
}
我希望这会有所帮助。
答案 2 :(得分:1)
xxx.php
中的应该是这样的:
namespace App\folderName; // App\xxx;
然后运行
php artisan config:cache;