轻量级 PHP 框架 TinyLara 更新:更优雅 附中文介绍

2014-10-29   /   阅读数:14783   /   分类: TinyLara

TinyLara

Image


  ______    _                      __
 /_  __/   (_)   ____    __  __   / /   ____ _   _____  ____ _
  / /     / /   / __ \  / / / /  / /   / __ `/  / ___/ / __ `/
 / /     / /   / / / / / /_/ /  / /___/ /_/ /  / /    / /_/ /
/_/     /_/   /_/ /_/  \__, /  /_____/\__,_/  /_/     \__,_/
                      /____/

中文介绍

TinyLara 是一个轻量级 PHP 框架,基于 Composer,可以看成 Laravel 的精简版。官方网站:http://tinylara.com/

Github

Github 项目地址:https://github.com/TinyLara/TinyLara

开始使用

下载:

git clone https://github.com/TinyLara/TinyLara

cd TinyLara

或者:

wget https://codeload.github.com/TinyLara/TinyLara/legacy.zip/master

unzip master

cd TinyLara*

安装依赖包:

composer update

修改数据库配置文件 `app/database.php`,将 `demo.sql` 导入数据库。

查看代码:

config/routes.php :

Route::get('', 'HomeController@home');

更加优雅的邮件发送及视图调用接口:

app/controllers/HomeController.php :

public function home()

{

  // mail sample

  Mail::to('foo@bar.io')->from('bar@foo.io')

                        ->title('Foo Bar')

                        ->content('<h1>Hello~~</h1>')

                        ->send();

  // redis sample

  Redis::set('key','value',3000,'ms');

  echo Redis::get('key');

  // view sample

  return View::make('home')->with('article',Article::first())

                            ->withTitle('TinyLara :-D')

                            ->withFooBar('foo_bar');

}

运行项目:

cd public && php -S 127.0.0.1:3000

访问 http://127.0.0.1:3000/

TinyLara 已经跑起来了!


特性

1. 微型路由包 TinyLara/TinyRoute, 基于性感而快速的 codingbean/macaw

2. MVC 架构

3. 采用地球上最强大的 PHP ORM 之一:Laravel Eloquent

4. 优雅而强大的 Laravel 式的视图加载器

5. 支持原生 PHP 操作 Redis,无需安装任何 PHP 扩展。

6. 一行代码即可发送 SMTP 邮件。

协议

TinyLara 采用 MIT license 协议分发,衍生项目除了必须采用 MIT 协议之外无任何限制。


English Version

TinyLara is a Simple PHP Framework based on Composer, looks like a Tiny Laravel. 

Start

Download:


git clone https://github.com/TinyLara/TinyLara cd TinyLara

OR:

wget https://codeload.github.com/TinyLara/TinyLara/legacy.zip/master

unzip master

cd TinyLara*

Install dependencies:

composer update

Then modify `app/database.php` with right information and import `demo.sql`.

Just see:

config/routes.php :

Route::get('', 'HomeController@home');

app/controllers/HomeController.php :

public function home()

{

  // mail sample

  Mail::to('foo@bar.io')->from('bar@foo.io')

                        ->title('Foo Bar')

                        ->content('<h1>Hello~~</h1>')

                        ->send();

  // redis sample

  Redis::set('key','value',3000,'ms');

  echo Redis::get('key');

  // view sample

  return View::make('home')->with('article',Article::first())

                            ->withTitle('TinyLara :-D')

                            ->withFooBar('foo_bar');

}

Run:


cd public && php -S 127.0.0.1:3000

Visit http://127.0.0.1:3000/

It's already running!


Features

1. Tiny router TinyLara/TinyRoute, based on fast and sexy codingbean/macaw

2. MVC architecture

3. One of the Most powerful PHP ORM on Earth: Laravel Eloquent

4. Powerful Laravel-style views loader

5. Redis ready in Laravel-style

6. Handy SMTP mailer

License

The TinyLara framework is open-sourced software licensed under the MIT license

WRITTEN BY

avatar

评论:

L Get Y
2019-09-08 15:53
挺好
vertex
2019-01-18 18:01
能否在闲余时间发几篇tinylara框架源码开发的教程,好像学习一下这个框架开发的流程
农民农民
2016-11-10 15:17
动态路由要怎么弄来着
takatost
2015-04-03 23:16
貌似很好用的 artisan 没有了,migration 也没了
takatost
2015-04-03 23:09
这个 TinyLara 框架到底精简了些什么呢?有具体介绍吗
JohnLui
2015-04-04 00:04
@takatost:这是我拿出了 Laravel 中最强大的 Eloquent 之后全新搭建的轻量级框架,别的部分跟 Laravel 没有太多关系。轻量的目的是为了适应一些只需要和数据库交互的场景,例如纯 API。
sbaby
2015-05-25 01:31
@JohnLui:@JohnLui 您了,我在做的项目主要以前端js框架为主,后台主要是提供Json数据。 想用tinyLara。 不过不知道怎么使用,能介绍一下吗?谢谢。
sbaby
2015-05-25 01:34
@JohnLui:@JhonLui,您好,我在做的一个项目主要以前端的Js框架为主,用Jquery-easyui或Webix。 服务器主要提供数据(Json格式数据)以及权限管理。 看到TinyLara感觉应该合适,但是不知道应该怎么用,能帮忙但要一下吗?谢谢。
JohnLui
2015-05-25 09:27
@sbaby:TinyLara 非常精简,没有权限管理,需要安装第三方包。输出json倒是很容易,查出数据以后直接json_encode 就行
JohnLui
2015-05-25 09:29
@sbaby:如果你是前端工程师,对后端不熟悉的话,建议用别的框架,TinyLara 比较适合高手,新手可能会遇到各种各样的问题。
sbaby
2015-05-26 15:27
@JohnLui:@JohnLui 谢谢解答。 我之前主要开发前端, 后台用asp。 现在才改php。所以挺多不熟悉,哈。 多指教。 由于之前有asp的基础, 学Laravel框架还是能看懂的。 想再请教一下,有用过Laravel+Zizaco/Entrust做权限管理开发吗?好用吗?
JohnLui
2015-05-27 10:12
@sbaby:没用过,权限控制我一般都自己做。
好好学习
2015-02-07 14:51
请问http://tinylara.com/中的代码是通过什么显示出来的?样式很好看!
无名氏
2014-11-03 16:54
\TinyLara\config\routes.php


echo "ce shi route.";
echo "<br>";
Route::get('foo', function() {
  echo "Foo!";
});
这个访问的URL该怎么写。

这样一直访问不到
http://localhost/TinyLara/public/foo
输出:
ce shi route.
JohnLui
2014-11-03 17:41
@无名氏:看起来是因为没有伪静态,访问 http://localhost/TinyLara/public/index.php/foo 应该就可以了。
无名氏
2014-11-03 17:49
@JohnLui:因该不是伪静态的问题
http://localhost/TinyLara/public/index.php/foo
同样访问不了。
.htaccess
<IfModule mod_rewrite.c>
    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
</IfModule>
JohnLui
2014-11-03 18:22
@无名氏:你把网页根目录直接指向 TinyLara/public 吧。但我觉得更有可能是 localhost 的问题,建议使用 ip。

发表评论:

© 2011-2019 岁寒  |  Powered by Emlog