When I try to require autoload in my index.php file I get this error Warning: require_once(C:\xampp\htdocs\gacho\public/vendor/autoload.php): failed to open stream. Now I know that path to vendor folder isn't correct but I can't find the right one. Also I'm using .htaccess file and I think that has to do something with the problem. Here is my code structure and code:
code structure:
gacho
|- app
|- controller
|- core
|- model
|- view
|-public
|- .htaccess
|- index.php
|-vendor
|- composer
|- autoload_classmap.php
|- autoload.php
|-composer.json
.htaccess:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^ index.php [QSA,L]
composer.json
{
"autoload": {
"classmap":[
"app"
]
}
}
autoload_classmap
return array(
'App\\Controller\\HomeController' => $baseDir .
'/app/controller/HomeController.php',
'App\\Core\\Application' => $baseDir . '/app/core/Application.php',
'App\\Core\\Controller' => $baseDir . '/app/core/Controller.php',
'App\\Core\\Database' => $baseDir . '/app/core/Database.php',
'App\\Core\\View' => $baseDir . '/app/core/View.php',
'App\\Model\\User' => $baseDir . '/app/model/User.php',
);
index.php
require_once __DIR__ . '/vendor/autoload.php';
require_once __DIR__ . '/../vendor/autoload.php';
– Quasimodo's clonerequire_once __DIR__ . '\vendor\autoload.php';
with backslashes it will be compatible with the Windows file system. The warning message you got was showingC:\xampp\htdocs\gacho\public/vendor/autoload.php
with a mix of slashes and backslashes. – tshimkus