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

php 安装yaf扩展和yaf框架的更多相关文章

  1. PHP安装加载yaf扩展

    Yaf,全称 Yet Another Framework,是一个C语言编写的PHP框架,是一个用PHP扩展形式提供的PHP开发框架, 相比于一般的PHP框架, 它更快. 它提供了Bootstrap, ...

  2. Ubuntu14下LAMP环境的安装以及yaf扩展的安装

    前段时间在ubuntu下安装了lamp环境,记录一下安装过程方便以后查阅. 安装lamp环境 ① 安装apache sudo apt-get install apache2 系统会弹出如图所示的提示, ...

  3. 一句话搞定-phpStudy安装yaf扩展

    首先下载phpStudyX64位的,然后傻瓜式安装,安装完下载yaf,由于yaf扩展的网站在国外很难下载,需要FQ,所以我这里下载了yaf5.6nts.zip,解压后把php_yaf.dll这个文件粘 ...

  4. Centos环境下给PHP7.0安装yaf扩展

    首先要知道PHP的安装目录在哪里,以我当前的路径为例,在/usr/local/php目录下. 下一步需要下载扩展包,进入http://pecl.php.net/package/yaf寻找符合版本要求的 ...

  5. Linux 下安装Yaf扩展

    1.在官网下载了yaf扩展包 yaf-3.0.3.tgz 2.开始安装yaf扩展 tar zxvf yaf-3.0.3.tgz cd yaf-3.0.3 phpize ./configure --wi ...

  6. php7.2 下安装yaf扩展

    wget http://pecl.php.net/get/yaf-3.0.7.tgz  解压并进入目录: 1 tar -zxvf yaf-3.0.7* && cd yaf-3.0.7  ...

  7. wampserver2.5安装 redis缓存,igbinary, phalcon框架

    wampserver2.5安装 redis缓存,igbinary, phalcon框架 根据phalconphp说明文件,先将dll文件拖入到:安装盘:\wamp\bin\php\php5.5.12\ ...

  8. PHP 文件加密Zend Guard Loader 学习和使用(如何安装ioncube扩展对PHP代码加密)

    一.大体流程图 二.PHP 项目文件加密 下表列出了Zend产品中的PHP版本及其内部API版本和Zend产品版本. 如何加密请往后看 三.如何使用 第一步:确认当前环境 Amai Phalcon 前 ...

  9. 编译安装PHP7并安装Redis扩展Swoole扩展(未实验)

    用PECL自动安装Redis扩展.Swoole扩展 pecl install redis pecl install swool 编译安装PHP7并安装Redis扩展Swoole扩展 在编译php7的机 ...

随机推荐

  1. windows phone 切换多语言时,商店标题显示错误的问题

    前段时间,用业余时间写了一款 wp8 app(“超级滤镜”商店,中文地址:英文地址),在多语言的时候,给 app title 和 app tile title 进行多语言时(参考 MSDN),中文商店 ...

  2. java中Keytool的使用总结 (加密 密钥(key)和证书(certificates))

    http://blog.chinaunix.net/uid-17102734-id-2830223.html

  3. Django REST framework 知识点总结

    一.安装DjangoREST framework #先安装Django #安装必要的包 pip install djangorestframework coreapi (1.32.0+) - Sche ...

  4. 防止js拦截跳转请求的方法

    不要直接使用window.open这个方法. 考虑下使用下面这个: openWindow: function(url){ var link = document.createElement('a'); ...

  5. MDI多文档窗体--在一个窗体中装载多个窗体

    创建MDI窗体之前,首先要明确两个概念:父窗体和子窗体,在MDI窗体中,起到容器作用的窗体被称为“父窗体”, 可放在父窗体中的其他窗体被称为子窗体,也成为MDI子窗体.当应用程序启动时,首先会显示父窗 ...

  6. Tomcat热部署及错误排查

    Maven的热部署 第一步:配置Tomcat的登陆的用户名与密码 C:\apache-tomcat-7.0.33\conf\ tomcat-users.xml  从第36行开始配置     <r ...

  7. 【转】web测试技术经典案例(基础、全面)

    觉得有些内容还是挺实用的,就转了 1. 概述 随着web应用的增多,新的模式解决方案中以web为核心的应用也越来越多,很多公司各种应用的架构都以B/S及web应用为主,但是有关WEB测试方面的内容并没 ...

  8. 010杰信-创建购销合同Excel报表系列-3-新增合同货物:这里涉及到子表的新增(合同货物表是购销合同表的子表)

    效果说明: 前面分析过购销合同的Excel报表需要四张表,这篇讲的是合同货物表. 这个合同货物表是购销合同的子表,是一个购销合同有多个合同货物的关系.在合同货物表中有购销合同的主键作为外键.所以这张表 ...

  9. 故如果要比较两个字符串是否相同可以对a调用equal

    故如果要比较两个字符串是否相同(而不是他们的地址是否相同).可以对a调用equal: System.out.println(a.equal(b)); equal用来比较两个对象中字符串的顺序. a.e ...

  10. 上传Docker镜像到阿里云

      1.配置阿里云的镜像加速器:https://cr.console.aliyun.com/#/accelerator 2.命令行登录到阿里云的doker仓库,--username为阿里云的用户名 d ...