仓酷云

标题: PHP网页编程之php多层数组和对象的转换 [打印本页]

作者: 再现理想    时间: 2015-2-3 23:33
标题: PHP网页编程之php多层数组和对象的转换
终于理解了数据库的概念,而且让你兴奋不已的是你终于可以通过PHP来连接数据库了,这期间你是怎么学会的,我们不去考证了,但是事实证明,你已经可以了。      多层数组和对象转化的用处很复杂,便于处置WebService中多层数组和对象的转化
    复杂的(array)和(object)只能处置单层的数据,关于多层的数组和对象转换则力所不及。
    经由过程json_decode(json_encode($object)可以将对象一次性转换为数组,然而object中碰到非utf-8编码的非ascii字符则会呈现成绩,好比gbk的中文,况且json_encode和decode的功能也值得疑虑。
    上面上代码:
  1. <?php   function objectToArray($d) { if (is_object($d)) { // Gets the properties of the given object // with get_object_vars function $d = get_object_vars($d); }   if (is_array($d)) { /* * Return array converted to object * Using __FUNCTION__ (Magic constant) * for recursive call */ return array_map(__FUNCTION__, $d); } else { // Return array return $d; } }   function arrayToObject($d) { if (is_array($d)) { /* * Return array converted to object * Using __FUNCTION__ (Magic constant) * for recursive call */ return (object) array_map(__FUNCTION__, $d); } else { // Return object return $d; } } // Useage: // Create new stdClass Object $init = new stdClass; // Add some test data $init->foo = "Test data"; $init->bar = new stdClass; $init->bar->baaz = "Testing"; $init->bar->fooz = new stdClass; $init->bar->fooz->baz = "Testing again"; $init->foox = "Just test";   // Convert array to object and then object back to array $array = objectToArray($init); $object = arrayToObject($array);   // Print objects and array print_r($init); echo "\n"; print_r($array); echo "\n"; print_r($object); ?>
复制代码
我先把我自己学习PHP的过程做一下概括:
作者: 若相依    时间: 2015-2-6 18:32
对于懒惰的朋友,我推荐php的集成环境xampp或者是wamp。这两个软件安装方便,使用简单。但是我还是强烈建议自己动手搭建开发环境。
作者: 莫相离    时间: 2015-2-8 14:24
再就是混迹于论坛啦,咱们的phpchina的论坛就很强大,提出的问题一般都是有达人去解答的,以前的帖子也要多看看也能学到不少前辈们的经验。别的不错的论坛例如php100,javaeye也是很不错的。
作者: 变相怪杰    时间: 2015-2-9 21:18
环境搭建好,当你看见你的浏览器输出“it works\\\\\\\"时你一定是喜悦的。在你解决问题的时候,我强烈建议多读php手册。
作者: 爱飞    时间: 2015-2-11 11:52
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: 因胸联盟    时间: 2015-2-15 09:43
这些都是最基本最常用功能,我们这些菜鸟在系统学习后,可以先对这些功能深入研究。
作者: 不帅    时间: 2015-2-28 18:22
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
作者: 只想知道    时间: 2015-3-10 03:33
做为1门年轻的语言,php一直很努力。
作者: 再见西城    时间: 2015-3-10 21:28
使用 jquery 等js框架的时候,要随时注意浏览器的更新情况,不然很容易发生框架不能使用。
作者: 活着的死人    时间: 2015-3-17 10:11
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
作者: 蒙在股里    时间: 2015-3-24 06:57
因为blog这样的可以让你接触更多要学的知识,可以接触用到类,模板,js ,ajax
作者: admin    时间: 2015-3-27 02:12
作为一个合格的coder 编码的规范是必须,命名方面我推崇“驼峰法”,另外就是自己写的代码最好要带注释,不然时间长了,就算是自己的代码估计看起来都费事,更不用说别人拉。
作者: 第二个灵魂    时间: 2015-3-27 11:09
爱上php,他也会爱上你。
作者: 金色的骷髅    时间: 2015-3-28 21:11
小鸟是第一次发帖(我习惯潜水的(*^__^*) 嘻嘻……),有错误之处还请大家批评指正,另外,前些日子听人说有高手能用php写驱动程序,真是学无止境,人外有人,天外有天。
作者: 乐观    时间: 2015-3-31 11:45
写的比较杂,因为我也是个新手,不当至于大家多多指正。
作者: 老尸    时间: 2015-4-22 05:45
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
作者: 小魔女    时间: 2015-4-24 13:20
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者: 飘飘悠悠    时间: 2015-5-12 11:26
学好程序语言,多些才是王道,写两个小时代码的作用绝对超过看一天书,这个我是深有体会(顺便还能练打字速度)。
作者: 小女巫    时间: 2015-6-5 07:21
最后祝愿,php会给你带来快乐的同时 你也会给他带来快乐。
作者: 再现理想    时间: 2015-6-15 03:47
如果你已经到这种程度了,那么你已经可以做我的老师了。其实php也分很多的区域,




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2