【发布时间】:2018-04-10 16:09:36
【问题描述】:
我正在尝试自动加载文件并为我的应用设置一个入口点。我没有使用框架,而是使用 OOP。 我的 composer.json 文件是:
{
"require": {
"tebazil/db-seeder": "^0.0.0"
},
"autoload": {
"psr-4": {
"vendor\\": "vendor/",
"App\\": "src/classes/"
},
"files": [
"src/functions.php"
]
}
}
在这个文件functions.php 中,我想包含vendor/autoload.php 文件。 我不确定如何为应用程序创建这个入口点,并在那里需要这个供应商/自动加载文件,因为我已经为此目标使用了框架。
这是 functions.php 的当前内容,但是在我渲染 index.html 视图文件时还有另一个问题,但是有 ajax 请求。 但是,为应用创建引导文件并自动加载必要文件的正确方法是什么?
<?php
namespace App;
require_once __DIR__ . '/../vendor/autoload.php';
use App\Db;
use App\User;
class Functions
{
public function render()
{
ob_start();
include(__DIR__ . '/../index.html');
$content = ob_get_contents();
ob_end_clean();
echo $content;
}
}
if(!($_GET && array_key_exists('name', $_GET))) {
$functions = new Functions();
$functions->render();
}
if($_GET && array_key_exists('name', $_GET)){
$user = new User();
$users = $user->getUsers();
}
【问题讨论】:
-
你在那里有一个循环依赖。自动加载的文件包含在自动加载器中,但您的自动加载的文件包含自动加载器。
标签: php composer-php autoload