Неустранимая ошибка: неперехваченная ошибка: класс 'Order' не найден в C: \ apache \ htdocs \ inventory_manager \ app \ public \ index.php: 17 - PullRequest
0 голосов
/ 21 мая 2019

Я создаю приложение для использования автозагрузки в composer.json для загрузки файлов моего класса. Я получал Fatal error: Uncaught Error: Class 'Order' not found in C:\apache\htdocs\inventory_manager\app\public\index.php:17

Я проверил путь к папке $ vendorDir относительно моего $ baseDir в vendor / composer / autoload_psr4.php и его правильность. Я проверил через темы с похожими проблемами, но все же. Заранее спасибо

Это мой файл 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 App\Order('Civic', 'Honda', 'Classic');

  var_dump($prdt);

1 Ответ

0 голосов
/ 22 мая 2019

У вас неправильное пространство имен для вашего Order класса.

Замените namespace App; на namespace App\Model;

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...