仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 548|回复: 6
打印 上一主题 下一主题

[学习教程] PHP网站制作之PHP读取设置文件类(php,ini,yaml,xml)

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-16 22:14:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
会PHP吗?会,我会把一加一的运算写在函数里,然后调用啦!
  1. <?phpclassSettings{var$_settings=array();functionget($var){$var=explode(.,$var);$result=$this->_settings;foreach($varas$key){if(!isset($result[$key])){returnfalse;}$result=$result[$key];}return$result;}functionload(){trigger_error(Notyetimplemented,E_USER_ERROR);}}classSettings_PHPextendsSettings{functionload($file){if(file_exists($file)==false){returnfalse;}//Includefileinclude($file);unset($file);//Getdeclaredvariables$vars=get_defined_vars();//Addtosettingsarrayforeach($varsas$key=>$val){if($key==this)continue;$this->_settings[$key]=$val;}}}classSettings_INIextendsSettings{functionload($file){if(file_exists($file)==false){returnfalse;}$this->_settings=parse_ini_file($file,true);}}classSettings_YAMLextendsSettings{functionload($file){if(file_exists($file)==false){returnfalse;}include(spyc.php);$this->_settings=Spyc::YAMLLoad($file);}}classSettings_XMLextendsSettings{functionload($file){if(file_exists($file)==false){returnfalse;}include(xmllib.php);$xml=file_get_contents($file);$data=XML_unserialize($xml);$this->_settings=$data[settings];}}?>php/***针对PHP的设置,若有设置文件*config.php<?php$db=array();//Enteryourdatabasenamehere:$db[name]=test;//EnterthehostnameofyourMySQLserver:$db[host]=localhost;?>//详细挪用:include(settings.php);//原始情况假定每一个类为独自的一个类名.php文件//Loadsettings(PHP)$settings=newSettings_PHP;$settings->load(config.php);echoPHP:.$settings->get(db.host).;**/读取INI文件,次要用到parser_ini_file函数,该函数前往一个数组,如第二个参数为true时则前往多维数组/***ini例子:config.ini*[db]name=testhost=localhost//挪用例子:$settings=newSettings_INI;$settings->load(config.ini);echoINI:.$settings->get(db.host).;*/读取XML文件,必要用到XML_PARSER,xmllib.php在http://hudeyong926.iteye.com/admin/blogs/836048/***XML例子:config.xml<?xmlversion="1.0"encoding="UTF-8"?><settings><db><name>test</name><host>localhost</host></db></settings>//Loadsettings(XML)$settings=NewSettings_XML;$settings->load(config.xml);echoXML:.$settings->get(db.host).;**/读取YAML格局文件,利用YAML必需利用到SPYC这个库,相干链接在http://spyc.sourceforge.net//**YAML设置例子:config.yamldb:name:testhost:localhost//Loadsettings(YAML)$settings=NewSettings_YAML;$settings->load(config.yaml);echoYAML:.$settings->get(db.host).;*/1。ini有点过期??2。xml对照好,3。yaml很好,可是究竟没有尺度化。4。txt要本人构造格局,开放性欠好。5。类序列化。对照好,可是不熟习的人利用对照贫苦!6。php界说常量(你不必修正数据吗?)以是:xml最好。
复制代码
要想从事软件开发工作,那么,还有很多的知识要学习,其实,不管是以后想去从事哪个工作,都需要自己去利用空闲的时间去不断的学习新的知识,不断的充实自己。
愤怒的大鸟 该用户已被删除
沙发
发表于 2015-1-27 23:48:25 来自手机 | 只看该作者
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
冷月葬花魂 该用户已被删除
板凳
发表于 2015-2-12 22:55:31 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
精灵巫婆 该用户已被删除
地板
发表于 2015-3-3 11:24:55 | 只看该作者
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
山那边是海 该用户已被删除
5#
发表于 2015-3-11 10:44:29 | 只看该作者
爱上php,他也会爱上你。
若相依 该用户已被删除
6#
发表于 2015-3-18 10:47:34 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
飘灵儿 该用户已被删除
7#
发表于 2015-3-25 21:12:22 | 只看该作者
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 08:24

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表