[英]Slim class not found.I am not sure what is it am doing wrong here
這是我的索引文件的代碼,該代碼位於根目錄中:
<?php
require 'vendor/autoload.php';
date_default_timezone_set('Asia/Seoul');
//$log = new Monolog\Logger('name');
//$log->pushHandler(new Monolog\Handler\StreamHandler('app.txt', Monolog\Logger::WARNING));
//$log->addWarning('Oh Noes.');
$app = new \Slim\Slim( array(
'view' => new \Slim\Views\Twig()
));
$app->add(new \Slim\Middleware\SessionCookie());
$view = $app->view();
$view->parserOptions = array(
'debug' => true
);
$view->parserExtensions = array(
new \Slim\Views\TwigExtension(),
);
//Path To Our View
$app->view->setTemplatesDirectory("app/view");
// Configs for mode "production"
$app->configureMode('production', function () use ($app) {
// Set the configs for production environment
$app->config(array(
'debug' => false,
'database' => array(
'db_host' => 'localhost',
'db_port' => '',
'db_name' => 'mini',
'db_user' => 'root',
'db_pass' => 'yaounde'
)
));
});
/******************************************** THE MODEL ********************************************************/
// Initialize the model, pass the database configs. $model can now perform all methods from Mini\model\model.php
$model = new \app\Model\Model($app->config('database'));
/************************************ THE ROUTES / CONTROLLERS *************************************************/
$app->get('/', function() use($app){
$app->render('about.twig');
})->name('home');
$app->get('/contact', function() use($app){
$app->render('contact.twig');
})->name('contact');
$app->post('/contact', function() use($app){
$name = $app->request->post('name');
$email = $app->request->post('email');
$msg = $app->request->post('msg');
if(!empty($name) && !empty($email) && !empty($msg)) {
$cleanName = filter_var($name, FILTER_SANITIZE_STRING);
$cleanEmail = filter_var($email, FILTER_SANITIZE_EMAIL);
$cleanMsg = filter_var($msg, FILTER_SANITIZE_STRING);
} else {
$app->flash('fail', 'All Fields Are Required.');
$app->redirect('contact');
}
$transport = Swift_MailTransport::newInstance();
$mailer = \Swift_Mailer::newInstance($transport);
$message = \Swift_Message::newInstance();
$message->setSubject('Simple Blog Contact Form Submission');
$message->setFrom(array(
$cleanEmail => $cleanName
));
$message->setTo(array('admin@localhost'));
$message->setBody($cleanMsg);
$result = $mailer->send($message);
if($result > 0) {
$app->flash('success', 'Thanks So Much! You are AWESOME!!!');
$app->redirect('contact');
} else {
$app->flash('fail', 'So Sorry, Something Went Wrong. Please Try Again!');
// log that there was an error
$app->redirect('/contact');
}
});
$app->run();
然后,將Model.php
放在文件夾app\\Model\\Model.php
<?php
namespace app\Model;
use PDO;
class Model
{
function __construct($config)
{
}
}
我收到此錯誤:
致命錯誤:在第43行的E:\\ xampp \\ htdocs \\ aaaaaslim \\ index.php中找不到類'app \\ Model \\ Model'
您可以使用Composer
加載自己的名稱空間。
只需將以下內容添加到您的composer.json
。
"autoload": {
"psr-4": {
"app\\": "app/"
}
}
當您進行作曲家更新時,自動加載將了解您的名稱空間app
並在不手動導入它們的情況下即時包含您的類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.