一、安装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 推送通知的第四类推送

    在 MSDN 文档有关 Windows Phone 推送通知 有关推送的内容包含 Tile.Toast.Raw 这三种通知.这三种通知 的方式类似,运用的场合不同,这里不再赘述,它们的运行原理类似: ...

  2. VS2015配置Linux开发远程调试

    # VS2015配置Linux开发远程调试 ### 简介-----------------------------vs2015支持跨平台开发 ### 软件环境--------------------- ...

  3. mybatis、ibatis 和spring集成

    mybatis是ibatis的升级版,spring也有自带mybatis的orm.所以,搭建ibatis的框架也会有多种方式(我这里mybatis是3.0的,ibatis是2.3的,spring是3. ...

  4. mof提权原理及其过程

    mof提权的原理: mof是windows系统的一个文件(在c:/windows/system32/wbem/mof/nullevt.mof)叫做"托管对象格式"其作用是每隔五秒就 ...

  5. Keil的使用方法(汇总)

    推荐 分享一个大神的人工智能教程.零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到人工智能的队伍中来! http://www.captainbed.net/strongerhuang 软件的开发 ...

  6. MyBatis-Spring-Boot 使用总结

    接 MyBatis-Spring 使用总结 .   mybatis开发团队为Spring Boot 提供了 MyBatis-Spring-Boot-Starter . 首先,MyBatis-Sprin ...

  7. 《网络编程》非堵塞 I/O

    概述 在前面文章中,我们介绍了 I/O 的五种模型<I/O 模型>.从那里能够知道,非堵塞式的 I/O 是进程调用 I/O 操作时.若数据未准备就绪.则马上返回一个 EWOULDBLOCK ...

  8. ThinkPHP项目笔记之控制器常用语法

    如,有数据表:tmp,以下以此为例. $a = M('Tmp'); $a -> select(); $a -> where(condition)->select(); $a -> ...

  9. android4.4上全屏界面实现禁止状态栏下拉

    附上我改动的方法:PhoneWindowManager.java里面的改动 --- a/frameworks/base/policy/src/com/android/internal/policy/i ...

  10. hdu 1058:Humble Numbers(动态规划 DP)

    Humble Numbers Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)To ...