• php 安装yaf扩展和yaf框架


    一、安装yaf扩展(windows安装)

    1.查看你电脑安装的开发环境(phpinfo()的信息),查找 "Zend Extension Build"和"PHP Extension Build",yaf版本要与操作系统位数,php版本相对应,否则yaf安装不成功,如图:

    其中TS表示线程安全的意思,至于线程安全和非线程安全就不解释了,可以网上搜寻一下;

    2.下载对应的yaf扩展,下载网址:http://pecl.php.net/package-stats.php(这是php官方网站下载扩展包的地址,直接选择yaf)

      2.1 根据 "php的版本"、"操作系统(x64/x86)"等下载对应的yaf扩展

      2.2 下载解压后将php_yaf.dll文件复制到php/ext下边,然后在php.ini文件中添加 extension=php_yaf.dll 

      2.3 重启环境,再次输入phpinfo()的信息就会出现如下的内容(就表示安装成功了):

        

    3.安装yaf扩展失败的原因之一在于 php的版本和操作位数 与你当前的开发环境不一致

    二、介绍php扩展框架yaf

      Yaf是一个C语言编写的PHP框架,Yaf 的特点:

    1. 用C语言开发的PHP框架, 相比原生的PHP, 几乎不会带来额外的性能开销.

    2. 所有的框架类, 不需要编译, 在PHP启动的时候加载, 并常驻内存.

    3. 更短的内存周转周期, 提高内存利用率, 降低内存占用率.

    4. 灵巧的自动加载. 支持全局和局部两种加载规则, 方便类库共享.

    5. 高性能的视图引擎.

    6. 高度灵活可扩展的框架, 支持自定义视图引擎, 支持插件, 支持自定义路由等等.

    7. 内建多种路由, 可以兼容目前常见的各种路由协议.

    8. 强大而又高度灵活的配置文件支持. 并支持缓存配置文件, 避免复杂的配置结构带来的性能损失.

    9. 在框架本身,对危险的操作习惯做了禁止.

    10. 更快的执行速度, 更少的内存占用.

    三、php扩展框架yaf框架的安装和使用

    1.下图是yaf的一个基本的框架目录结构(这些目录和文件自己手动创建):

      

      1.1 目录介绍:

        a. conf 配置文件目录,application.ini 配置文件,内容如下:  

    [product]
    ;支持直接写PHP中的已定义常量
    application.directory=APP_PATH "/application/"

        b. public目录,index.php入口文件,内容如下:

    <?php
    define("APP_PATH", realpath(dirname(__FILE__) . '/../')); /* 指向public的上一级 */
    $app = new Yaf_Application(APP_PATH . "/conf/application.ini");
    $app->run();

        c. application/controllers 控制器目录 ,index.php控制器,内容如下:

    <?php
    class IndexController extends Yaf_Controller_Abstract {
      public function indexAction() {//默认Action
        $this->getView()->assign("content", "Hello Yaf");
      }
    }

        d. application/views 模板目录,添加index控制器模板目录,新建文件index.phtml页面文件

    <h1><?php echo $content;?></h1>

        e. application/plugins 插件目录

        f. application/models  model目录

        g. application/library 本地类库

        h. application/modules 其他模块

    2.最后访问http://localhost/yafs/public/ 页面就会出现 Hello Yaf 字样,就表示安装成功了

  • 相关阅读:
    学会读懂 MySql 的慢查询日志
    Azure Mobile App
    ZOJ 3810 A Volcanic Island (2014年牡丹江赛区网络赛B题)
    学习日记之观察者模式
    Linux C高级编程——网络编程基础(1)
    Atitit.ati&#160;&#160;str&#160;&#160;字符串增强api
    ListView 自己定义BaseAdapter实现单选打勾(无漏洞)
    TintTo和TintBy
    cc.Sprite
    手机网页一行中文字数上限
  • 原文地址:https://www.cnblogs.com/zengguowang/p/6762304.html
Copyright © 2020-2023  润新知