THINKPHP支持YAML配置文件的设置方法


Posted in PHP onMarch 17, 2015

为什么要用 yaml

因为 Yaml 简单,而且对人类友好;

Yaml: http://www.yaml.org/

在哪里会用到?

最基本的,在 ThinkPHP 的配置文件里面就可以选择 Yaml 的格式,你是愿意写 Yaml 的简洁格式配置呢?还是愿意写又长又臭又难写的 PHP array 呢?

http://document.thinkphp.cn/manual_3_2.html#config_format

问题来了

于是,我把配置格式改为 Yaml:

// /index.php
// 定义配置文件的格式为 yaml

define('CONF_EXT', '.yaml');

然后把 Application 目录下面的 config.php 全部改为 config.yaml。

这个时候,报错:

Class ‘Spyc' not found 错误位置 FILE: D:\app\think\ThinkPHP\Common\functions.php  LINE: 90

然后找,发现这一段:
/**

 * 解析yaml文件返回一个数组

 * @param string $file 配置文件名

 * @return array

 */

if (!function_exists('yaml_parse_file')) {

    function yaml_parse_file($file) {

        vendor('spyc.Spyc');

        return Spyc::YAMLLoad($file);

    }

}

貌似引入 Spyc 这个库没找到。

找了一下,Spyc 在这里:https://github.com/mustangostang/spyc/

然后,这个 vendor 是什么东东?

看这里:http://document.thinkphp.cn/manual_3_2.html#autoload

结论:

在上面的 Git 里面下载 Spyc.php 放进 /ThinkPHP/Library/Vendor/spyc/ 目录下,就一切正常!Done with the right way!

PHP 相关文章推荐
linux php mysql数据库备份实现代码
Mar 10 PHP
php记录日志的实现代码
Aug 08 PHP
PHP程序级守护进程的实现与优化的使用概述
May 02 PHP
php防止sql注入代码实例
Dec 18 PHP
PHP多进程编程实例
Oct 15 PHP
php实现redis数据库指定库号迁移的方法
Jan 14 PHP
php使用类继承解决代码重复的问题
Feb 11 PHP
php实现仿写CodeIgniter的购物车类
Jul 29 PHP
[原创]php简单防盗链验证实现方法
Jul 09 PHP
Laravel 5.3 学习笔记之 配置
Aug 28 PHP
php+ajax 文件上传代码实例
Mar 18 PHP
php函数式编程简单示例
Aug 08 PHP
php判断数组中是否存在指定键(key)的方法
Mar 17 #PHP
php在数组中查找指定值的方法
Mar 17 #PHP
php中使用key,value,current,next和prev函数遍历数组的方法
Mar 17 #PHP
PHP实现获取客户端IP并获取IP信息
Mar 17 #PHP
支付宝接口开发集成支付环境小结
Mar 17 #PHP
php读取文件内容到数组的方法
Mar 16 #PHP
php实现以只读方式打开文件的方法
Mar 16 #PHP
You might like
PHP常用函数小技巧
2008/09/11 PHP
同台服务器使用缓存APC效率高于Memcached的演示代码
2010/02/16 PHP
Yii使用Captcha验证码的方法
2015/12/28 PHP
php根据用户名和手机号查询是否存在手机号码
2017/02/16 PHP
php 使用html5 XHR2实现上传文件与进度显示功能示例
2020/03/03 PHP
dojo学习第一天 Tab选项卡 实现
2011/08/28 Javascript
asp.net网站开发中用jquery实现滚动浏览器滚动条加载数据(类似于腾讯微博)
2012/03/14 Javascript
分享一道笔试题[有n个直线最多可以把一个平面分成多少个部分]
2012/10/12 Javascript
Android中资源文件(非代码部分)的使用概览
2012/12/18 Javascript
JavaScript的strict模式与with关键字介绍
2014/02/08 Javascript
JavaScript中number转换成string介绍
2014/12/31 Javascript
论Bootstrap3和Foundation5网格系统的异同
2016/05/16 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
纯JS单页面赛车游戏制作代码分享
2017/03/03 Javascript
vue中如何去掉空格的方法实现
2018/11/09 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
Fundebug支持监控微信小程序HTTP请求错误的方法
2019/02/21 Javascript
vue data有值,但是页面{{}} 取不到值的解决
2020/11/09 Javascript
[02:32]DOTA2英雄基础教程 祸乱之源
2013/12/23 DOTA
python字符串连接方式汇总
2014/08/21 Python
python使用clear方法清除字典内全部数据实例
2015/07/11 Python
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
Python实现k-means算法
2018/02/23 Python
Python类中的魔法方法之 __slots__原理解析
2019/08/26 Python
浅谈pytorch卷积核大小的设置对全连接神经元的影响
2020/01/10 Python
python opencv如何实现图片绘制
2020/01/19 Python
python读取图片的几种方式及图像宽和高的存储顺序
2020/02/11 Python
TensorFlow 输出checkpoint 中的变量名与变量值方式
2020/02/11 Python
浅谈Python中的异常和JSON读写数据的实现
2020/02/27 Python
使用python matplotlib 画图导入到word中如何保证分辨率
2020/04/16 Python
纯CSS3实现表单验证效果(非常不错)
2017/01/18 HTML / CSS
休学证明范本
2015/06/19 职场文书
思想工作总结范文
2015/08/12 职场文书
《纸船和风筝》教学反思
2016/02/18 职场文书
《秋天的图画》教学反思
2016/02/19 职场文书
opencv深入浅出了解机器学习和深度学习
2022/03/17 Python