簡體   English   中英

帶有作曲家PSR-4的Docker php

[英]Docker php with composer PSR-4

我正在嘗試在nas上使用docker發布我的網頁。 但是無法使PSR-4正常工作,它無法通過命名空間找到控制器。 一切都在我無所事事的盒子上工作了。 但是只要我不上課,它就不會中斷

未找到Whoops \\ Exception \\ ErrorException(E_ERROR)類'Rsubscribe \\ Controllers \\ BaseController'

bootstrap / start.php

require(__DIR__ . "/../vendor/autoload.php");
session_start();  
$router = new AltoRouter();

BaseController

<?php
namespace Rsubscribe\Controllers;

use duncan3dc\Laravel\BladeInstance;

class BaseController{
    protected $blade;

    public function __construct()
    {
        $this->blade = new BladeInstance("/var/www/views", "/var/www/cache/views");
    }
}

頁面控制器

class PageController extends BaseController
{
    public function getShowHomePage()
    {
        echo $this->blade->render("home");
    }

    public function getMoviePage()
    {
        echo $this->blade->render('movies');
    }
}

路線:

<?php        
    use duncan3dc\Laravel\BladeInstance; // Temp
    $router->map("GET", "/", "Rsubscribe\controllers\PageController@getShowHomePage", "home");
    $router->map("GET", "/home", "Rsubscribe\controllers\PageController@getShowHomePage", "home_2");
    $router->map("GET", "/movies", "Rsubscribe\controllers\PageController@getMoviePage", "movies");

composer.json

 .....
 .....
 "autoload": {
        "psr-4": {"Rsubscribe\\": "src/"}
    }

問題是命名空間是區分大小寫的,在Linux服務器上運行,但由於某種原因不在我的osx機器上運行時。 文件夾是小寫的,因此在名稱空間中也必須是小寫的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM