我正在创建一个应用程序,用于使用Composer.json中的自动加载来加载我的类文件。我正在得到
Fatal error: Uncaught Error: Class 'Order' not found in C:apachehtdocsinventory_managerapppublicindex.php:17
我在供应商/Composer/autoload_psr4.php中检查了$ vendordir文件夹的路径及其正确。我已经检查了具有类似问题的线程,但仍然。预先感谢
这是我的composer.json文件
{
"name": "inventory manager",
"description": "Inventory Management System",
"require": {
"phpmailer/phpmailer": "~6.0"
},
"autoload": {
"psr-4": {
"App\": "app"
}
}
}
这是我的文件夹结构
|---inventory_manager
|---app
|---Model
|---DatabaseObject.php
|---Order.php
|---Product.php
|---public
|---assets
|---css
|---index.php
|---vendor
|---composer.json
order.php
namespace App;
class Order
{
private $name;
private $brand;
private $shape;
function __construct($name,$brand, $shape)
{
$this->name = $name;
$this->brand = $brand;
$this->shape = $shape;
}
public function toString()
{
return "{$this->name}, {$this->brand}, {$this->shape}";
}
}
index.php
<?php
require '../../vendor/autoload.php';
$prdt = new AppOrder('Civic', 'Honda', 'Classic');
var_dump($prdt);
您的Order
类设置错误的名称空间。
用namespace AppModel;
namespace App;