php之zend framework入门

  一、首先需要在机器上搭建好php环境,至于如何搭建,不在本文讨论范围,大家可以baidu下。。

  二、在zend framework上下载 zend源码。

  三、我使用EclipsePHP Studio 3编辑器,个人感觉还不错,有兴趣的朋友,可以在php100网站上下载。建立一个php项目,并建立目录

        

其中application下用来放mvc相关的类与模板文件,安全考虑,可以在application目录下建立一个.htaccess文件,内容为:deny from all 拒绝所有对此目录下文件的访问。

library下放zend类库。

public 下放css,js文件与图片。

在项目根目录下创建.htaccess文件。并放入如下内容:

RewriteEngine on
RewriteRule !/.(jgp|ico|gif|png|bmp|css|js)$ index.php

此段代码的意思为开启url重定向,并将所以访问此文件夹下的请求,转到index.php,css,js文件与图片除外。

为了让这段代码生效,还需要修改apache的httpd.conf配置文件,将LoadModule rewrite_module modules/mod_rewrite.so 前的#去掉,即取消注释,将AllowOverride None 改为AllowOverride All。允许目录下的配置文件覆盖httpd.conf上的配置。

四、在项目根目录下创建index.php文件,写入如下内容:

 

 <?php

error_reporting(E_ALL|E_STRICT); //在开启错误报告

 date_default_timezone_set('Asia/Shanghai'); //配置地区

 set_include_path('.' .PATH_SEPARATOR .'./library'.PATH_SEPARATOR .'./application/models/'.PATH_SEPARATOR . get_include_path());  //配置环境路径

// require_once 'Zend/Loader.php';
// Zend_Loader::registerAutoload();//设置Zend Framework 自动载入类文件

 require_once "Zend/Loader/Autoloader.php";  //载入zend框架
 Zend_Loader_Autoloader::getInstance()->setFallbackAutoloader(true); //静态载入自动类文件

 $registry = Zend_Registry::getInstance(); //静态获得实例
 $view = new Zend_View(); //实例化zend 模板
 $view->setScriptPath('./application/views/scripts/');//设置模板显示路径
 $registry['view'] = $view;//注册View
 
  
 //设置控制器
 $frontController =Zend_Controller_Front::getInstance();
 $frontController->setBaseUrl('')//设置基本路径
     ->setParam('noViewRenderer', true)
     ->setControllerDirectory('./application/controllers')
     ->throwExceptions(true)
     ->dispatch();

 ?>

 

五、在/application/controllers目录下创建一个php文件,命名为IndexController.php 文件内容为

 

 <?php

  class IndexController extends Zend_Controller_Action
{
 function init(){
  $this->registery=Zend_registry::getInstance();
  $this->view=$this->registery["view"];
  $this->view->baseUrl=$this->_request->getBaseUrl();
  
 }
 
 function indexAction(){
  $this->view->world="hello,world";   //定义变量,此处的变量会在模板文件中用到
  echo $this->view->render("index.html"); //读取模板文件并显示
 }

}

 ?>

 

六、在/application/views/scripts文件夹下创建模板文件,index.html,文件内容 :

<?php echo($this->world) ?><!--  此处的world即为IndexController中定义的变量 -->

 

七、假如在apache中将这个项目配置为www.test.com:90,则在浏览器中打开www.test.com:90,如果看到hello,world则表示配置成功。关于如何在apache中配置多个项目,请看我的另一篇文章。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值