php使用fleaphp框架做开发。

fleaphp是国人开发的一套轻量级的框架。 在freebsd协议下发布。可以到www.fleaphp.org去下载。我就使用了一下,下面是把我的用法写下来。我使用的是1.0.70的版本。
    在你的工作目录建立下面几个目录:
       Controller
       Model
       View
       Config
       Cache
    并且把fleaphp框架下的FLEA目录复制到你的工作录目下,然后在工作目录下创建index.php文件。首先我门来研究编写index.php文件。
    define("APP_DIR",dirname(__FILE__));
    $configpath=APP_DIR;
    上面的就不解释了。
    require("FLEA/FLEA.php");        //这是必须的。因为在fleaphp中使用了FLEA字名空间。
    FLEA::import(APP_DIR);    //import函数是用来告诉FLEA到那去找Controller Mode View Config等目录和这些目录中的文件
    FLEA::loadAppInf($configpath."/Config/config.php"); // loadAppInf是用来导入fleaphp所需要的config文件。
    FLEA::runMVC(); //OK,在这你的程序开始跑起来了。

    在Controller目录下的文件和文件中的类命名方式是如下:如果文件名为TTT.php,那么这个文件中的类名就是Controller_TTT. 因此我在Controller下的文件是Book.php,Book.php文件中的类名就是Controller_Book。
 类的函数命名方式是actionXxx,Xxx是你要做的操作,.操作名第一个字母要大写。   
     class Controller_Book extends FLEA_Controller_Action 
      {
           var $_modemydb;
           function Controller_Book()
           {
              $this->_modemydb=&FLEA::getSingleton('Model_mydb');  //getSingleton(classname),是根据classname创建一个唯一的类对象。  在我们这段代码中Model_mydb是在View目录mydb.php文件中定义的。         
           
           }
           function actionIndex()
           {
               $posts=$this->_modemydb->findAll();//这个操作相当于执行了select * from table;
               include("View/user.php"); r/然后调用View/user.php将数据显示出来。
           }
           function actionSay()
           {
               print "heng,heng";
           }
   }
在来看看Model目录下的mydb.php
   FLEA::loadClass('FLEA_Db_TableDataGateway');   //loadClass(classname)是导入我们需要类。在Model目录下的类的命名方式是Model_XXX,XXX是你定义的类名,要和文件名一样。如果你不加Model就会在使用上面说的getSingleton函数的时候出现异常。

class Model_mydb extends FLEA_Db_TableDataGateway
{
    var $tableName="user";     //表名
    var $primaryKey="id";          //主键名
 }
最后来看看Config目录下的config.php文件。
return array(
      'defaultController' => 'Book',    //在这定义默认的Controller,我使用的是前面定义的Controller_Book类。如果不使用这句就要自己在Controller目录中定义一个Controller_Default类。
      'internalCacheDir' => dirname(dirname(__FILE__)) . DS . 'Cache',  //这句我还没有明白:(谁能告诉我呢.
      //下面的是dbDSN,这个就不需要我说了把。
       'dbDSN' => array(
        'driver'    => 'mysql',
        'host'      => 'localhost',
        'login'     => 'root',
        'password'  => '123456789',
        'database'  => 'fleaphp'
    )
  );
最好看View/user.php中的内容。如下
<html>
    <head>
    <title>用户信息</title>
    </head>
    <body>
    <? foreach ($posts as $post):?>
     用户ID:<?echo h($post["id"])?> &nbsp; &nbsp;用户名: <?echo h($post["name"])?><br>
     <?endforeach;?>
    </body>
     </html>

好了就说的这了。88. erverbody

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值