【发布时间】:2017-05-09 07:19:29
【问题描述】:
我是 laravel 的新手,需要一些帮助。 实际上我使用 5.3 laravel 版本。 我需要在 laravel 中使用外部公司框架(将其称为 F 表示简洁)。 这个框架有点像流程管理器。实际上,为了将它与 laravel 集成,我将它放在 laravel/public 文件夹中,这样我就可以在同一个域中使用 laravel 和 F 的页面。在 laravel 中,我需要访问一些 F 功能,这些功能都收集在 FFramework\Facade\FInterface 类中; 然后我想从 laravel 控制器 FController 访问这个类。 但是当我运行代码时,我得到了 Class Not Found Exception。
这是文件夹结构:
- laravel
- 应用程序
- http
- 控制器
- FController.php
- http
- 应用程序
- 公开
- CSS
- js
- index.php
- f框架
- 门面
- FInterface.php
- index.php
- 门面
这是代码示例:
FController.php
<?php
namespace App\Http\Controllers;
use FFramework\facade\FInterface;
class FController extends Controller {
public function getSimpleDAta() {
$f = new FInterface();
return $f->getSimpleData();
}
}
FInterface.php
<?php
namespace FFramework\facade;
use some\internal\function;
class FInterface {
public function getSimpleDAta() {
$simpleData = ...omg so much computation :) ...
return $simpleData;
}
}
我得到的例外:
找不到类“FFramework\facade\FInterface”
其他信息
我使用标准 LAMP 配置 PHP 版本是最新的 5.6 稳定版
问题
如何使用 Laravel 控制器中的 FInterface 将 FFramework 留在公共文件夹中?
【问题讨论】:
-
Laravel 使用 composer 的自动加载器,将命名空间和路径添加到 composer.json 中的自动加载部分。
标签: php laravel laravel-5.3 lamp