f3 fatfree小型php,如何为使用Fat Free的PHP框架

背景

Fat Free 框架是一个PHP 的微架构 ,是在2009年由奉COSCA启动。 遵循简单的方法,它倾向于避免添加不是严格必需的代码和结构,同时关注真正重要的。

为什么是一个微框架?

这种类型的简约设计在所谓的微框架中是常见的,其中PHP提供了广泛的选择。 其他受欢迎的微框架是: Slim (PHP), Sinatra (Ruby)和express.js(Node.js的)。 这些框架通常具有几个优点,例如:非常轻巧(无脂肪只有约55kb)

有一个温和的学习曲线,允许开发人员几乎专注于重要的,不必改变他们的编码风格。

提供成熟,成熟的框架通常具有的许多功能。

不言而喻,选择像Fat Free这样的微框架并不总是最好的选择。 对于其中的人的团队,预计大项目,如更自以为是和结构框架Yii的或Zend的可能会是一个更好的选择。

用Fat Free设置一个新项目

第一步: 下载框架解压项目的根文件夹中的文件。

Fat Free仅在PHP 5.3及更高版本上运行。 如果您不确定自己目前使用的版本,可以输入以下内容:/path/to/php -v

后经证实,你正在开发那里的环境是正确的,创建一个名为index.php ,这将是你的项目的引导文件。 第一行,包括Fat Free:// FatFree framework

$f3 = require ("fatfree/lib/base.php");

然后,通过设置以下变量,您必须告诉应用程序,如果您处于开发或生产模式:// Set to 1 when in development mode, otherwise set to 0

$f3->set('DEBUG', 1);

数据库

当然,你必须设置一个数据库连接。 假设你使用MySQL:// MySql settings

$f3->set('DB', new DB\SQL(

'mysql:host=localhost;port=3306;dbname=mydatabase',

'dbuser',

'dbpassword'

));

或者,如果你喜欢使用SQLite:$db=new DB\SQL('sqlite:/var/www/myproject/db/database.sqlite'));

查询

可以通过键入以下内容调用简单的查询:$result = $db->exec('SELECT field FROM table WHERE id = "1"');

或者,如果你喜欢它,你可以使用不含脂肪的内置ORM。 上面的查询将会是这样的:$table = new DB\SQL\Mapper($db, 'table');

$table->load(array('id=?', '1'));

$result = $table->field;

随着DB\SQL\Mapper功能,本质上是“映射”的表已在数据库中。 如果您需要在表格中添加新记录,则必须输入:$table = new DB\SQL\Mapper($db, 'table');

$table->field = "Here is a value";

$table->save();

注意:您不能使用ORM来更改表。

给你的项目一个结构

由于Fat Free是一个微框架,它没有为您的项目提供一个现成的结构,因此你必须自己创建它。 您的项目的结构示例可以是:- api

-- models

- css

- js

- template

- views

- index.php

但是,当然你可以完全自由地使用你喜欢的结构。 这是使用非评论框架的最好的事情。

自动加载

为了避免必须包括所有的类到你的项目,不含脂肪,您可以使用自动加载功能,这是一种只在你真正需要它们的时候,包括类。 所以,要调用所有的类,我们只需要输入:$f3->set('AUTOLOAD','api/models/');

在本例中, api/models/显然是我们拯救我们的所有型号的类的位置。 当你调用一个类(如$myClass = new myClass()无脂肪会自动寻找一个名为相同的方式(文件myClass.php的自动加载位置内)。

路由

下一个有趣的事情是Fat Free管理我们的应用程序的路由。 这是我们如何定义到我们的主页的路由:$f3->route('GET /',

function() {

echo 'This is my Home Page!';

}

);

注意GET属性那里。 如果需要的话,可以用POST来代替,甚至用GET | POST,如果你需要他们两个。

然后显然有一个函数来定义该页应该做什么。

您当然可以使用以下语法管理不同的参数:$f3->route('GET|POST /post/@id',

function($f3) {

echo 'Post #'.$f3->get('PARAMS.id');

}

);

正如你所看到的,一切由前面@将被视为可变参数。

模板和视图

Fat Free使您能够拥有您的模板和视图。 要在路由命令中包括您的模板/视图,只需写:$f3->route('GET /',

function($f3) {

// Instantiates a View object

$view = new View;

// Header template

echo $view->render('template/header.php');

// This is a variable that we want to pass to the view

$f3->set('name','value');

// Page view

echo $view->render('views/index.php');

// Footer template

echo $view->render('template/footer.php');

}

);

为了设置变量传递到一个视图,可以使用$f3->set('nameVariable', 'value')函数,然后调用同一个变量到视图(如views/index.php )通过输入`。 这真的很简单。

总而言之,这些可能是在使用Fat Free框架开发第一个应用程序时所需要的最有用的功能。 如果您需要更多的人,你总是可以参考官方文档 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值