一、安装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 字样,就表示安装成功了

最新文章

  1. 基于Metronic的Bootstrap开发框架经验总结(10)--优化Bootstrap图标管理
  2. Java读写文本文件操作
  3. docker搭建ros-indigo-arm交叉编译环境
  4. oracle 关键字
  5. SQLServer学习笔记&lt;&gt;相关子查询及复杂查询
  6. sqlserver取得本月一号
  7. 黑马程序员_高新技术之javaBean,注解,类加载器
  8. python&amp;django 实现页面中关联查询小功能(中级篇)
  9. php操作Memcache的一个类库
  10. gulp 自动ftp至服务器时,处理开发 测试服务器地址问题
  11. windows系统 webstorm安装zencoding方法
  12. 【mysql】decimal数据类型
  13. Win10系列:JavaScript 项目模板中的文件和项模板文件
  14. “word无法发布此文章”解决
  15. 【LOJ】#2527. 「HAOI2018」染色
  16. 向OSG视图Viewer发送消息
  17. Mysql 单表主从同步
  18. vim配置总结
  19. 新的开源java反汇编程序Procyon
  20. Java同步锁全息详解

热门文章

  1. Linux之目录的操作(创建、移动、改名、删除、复制)
  2. Pgsql特殊排序
  3. 非常多学ThinkPHP的新手会遇到的问题
  4. web应用中幂等性的学习
  5. span和img标签对齐
  6. sama5d3 开入测试
  7. PHP——分页显示数据库内容
  8. web.xml文件中&lt;mime-mapping&gt;
  9. 如何从CentOS官网下载我们想要的版本
  10. HBase学习系列