gears/view

此包已被放弃,不再维护。未建议替代包。

Laravel Sessions Standalone

v0.2.0 2014-10-03 02:00 UTC

This package is not auto-updated.

Last update: 2020-01-24 15:26:40 UTC


README

寻找维护者,我现在几乎不做PHP开发,我已经转行了,现在主要在dotnet core,node.js & golang上工作。如果有人有兴趣接管这些项目,请联系我 - brad@bjc.id.au

Blade View Gear

Build Status Latest Stable Version Total Downloads License

Laravel Blade Views Standalone

现在,希望你们已经听说过Laravel,这个PHP框架让事情变得简单。所以,首先,首先要完全归功于Taylor Otwell的Blade API。

如何安装

通过composer安装很简单

composer require gears/view:*

如何使用

在你的 传统 非Laravel应用程序中。你可以像这样使用Laravel Blade API

// Make sure you have composer included
require('vendor/autoload.php');

// Create a new View Instance
$views = new Gears\View('/path/to/my/views');

// Next you will probably want to make the view object global.
$views->globalise();

就是这样,现在你可以使用如下代码

echo View::make('greeting', array('name' => 'Brad'));

其中视图可能看起来像

<!-- View stored in /path/to/my/views/greeting.php -->

<html>
    <body>
        <h1>Hello, <?php echo $name; ?></h1>
    </body>
</html>

有关View API的更多信息,请参阅: https://laravel.net.cn/docs/responses#views https://laravel.net.cn/docs/templates#blade-templating

视图作用域

当你运行 $views->globalise(); 时,它会检查类 View 是否全局存在。如果不存在,它使用函数 class_alias 将其别名,就像Laravel应用程序一样。

这使我们能够使用我们熟悉的 View API。

视图包含路径

你可以提供一个路径数组,而不仅仅是单个路径。因此,实际上你可以有一个视图包含路径。这对于设置HMVC类型系统非常有用。以下是一个示例

$views = new Gears\View(['/views/specific', '/views/generic']);

那么现在为什么这么做呢?

虽然Laravel非常酷,但如果要从Laravel中提取一个功能并在另一个项目中使用它,可能会变得困难。首先,你必须对IoC容器有内在的理解。

然后你会发现这个类需要那个类,而这个类又需要一些通常在正常Laravel应用程序中存在的配置变量,但你没有定义它,也不想在你的 传统 应用程序中定义该值,因为它没有意义。

完美的例子是我试图将session API提取出来用于wordpress。它想知道一个 booted 方法,我想它来自 Illuminate\Foundation\Application。在这个时候,我已经不得不添加各种其他东西到IoC中才能使其满意,这是我压垮骆驼背的最后一根稻草,我爆发了,走到冰箱前,抓了一罐Redbull,坐下来以新的方法思考。

结果就是这个项目。

由布拉德·琼斯开发 - brad@bjc.id.au