【解析PHP将对象转换成数组的方法(兼容多维数组类型)】教程文章相关的互联网学习教程文章

php计算多维数组中所有值总和的方法_PHP

本文实例讲述了php计算多维数组中所有值总和的方法。分享给大家供大家参考。具体实现方法如下: php 内置函数 array_sum() 函数返回数组中所有值的总和,只能返回一维数组的总和; 计算多维数组所有值的和就要自定义函数了;function get_sum($array) {$num = 0;foreach($array as $k => $v) {if(is_array($v)) {$num += get_sum($v);}}return $num + array_sum($array); } get_sum($array);希望本文所述对大家的php程序设计有所帮...

php实现遍历多维数组的方法_PHP

本文实例讲述了php实现遍历多维数组的方法。分享给大家供大家参考,具体如下:$a=array(fruits=>array(a=>orange,b=>grape,c=>apple),numbers=>array(1,2,3,4,5,6),holes=>array(first,5=>second,third)); //第一种: foreach($a as $list=>$things){if(is_array($things)){foreach($things as $newlist=>$counter){echo "key:".$newlist.""."value:".$counter."";} } } //第二种: function MulitarraytoSingle($array){$temp=arra...

PHP多维数组转一维数组的简单实现方法_PHP

本文实例讲述了PHP多维数组转一维数组的简单实现方法。分享给大家供大家参考,具体如下: php语言本身没有将多维数组转为一维数组的函数,但是我们可以自己写一个php函数来实现将多维转一维的功能。 运用了递归,简单粗暴,整个函数体9行代码就实现了该功能,php源码如下:$multi = array(array(array(wo,shi),php),cheng,array(array(xu,yuan,)),! ); $multi = arrToOne($multi); print_r($multi); function arrToOne($multi) {$a...

phpcurl模拟post请求和提交多维数组的示例代码_PHP

下面一段代码给大家介绍php curl模拟post请求的示例代码,具体代码如下:<?php $uri = "http://www.cnblogs.com/test.php";//这里换成自己的服务器的地址 // 参数数组 $data = array (name => tanteng // password => password ); $ch = curl_init (); // print_r($ch); curl_setopt ( $ch, CURLOPT_URL, $uri ); curl_setopt ( $ch, CURLOPT_POST, 1 ); curl_setopt ( $ch, CURLOPT_HEADER, 0 ); curl_setopt ( $ch, CURLOPT_RETU...

PHP多维数组遍历方法(2种实现方法)_PHP

本文实例讲述了PHP多维数组遍历方法。分享给大家供大家参考,具体如下: 方法一:$a=array(fruits=>array(a=>orange,b=>grape,c=>apple),numbers=>array(1,2,3,4,5,6),holes=>array(first,5=>second,third)); foreach($a as $list=>$things){if(is_array($things)){foreach($things as $newlist=>$counter){echo "key:".$newlist.""."value:".$counter."";}} }方法二:function MulitarraytoSingle($array){$temp=array();if(is_ar...

thinkPHP中多维数组的遍历方法_PHP

本文实例讲述了thinkPHP中多维数组的遍历方法。分享给大家供大家参考,具体如下:$drug=array(ACEI=>array(array(ch_name=>,en_name=>captopril),array(ch_name=>脚本下载,en_name=>enalapril),array(ch_name=>赖诺普利,en_name=>lisinopril)),ARB=>array(array(ch_name=>脚本源码,en_name=>eprosartan), array(ch_name=>jb51,en_name=>candesartan),array(ch_name=>PHP学习,en_name=>losartan),array(ch_name=>JS学习,en_name=>va...

PHP递归遍历多维数组实现无限分类的方法_PHP

本文实例讲述了PHP递归遍历多维数组实现无限分类的方法。分享给大家供大家参考,具体如下:<?php//$data[]=array(id=>1,parentid=>0,name=>中国,img=>52091199);$data[]=array(id=>1,parentid=>0,name=>中国);$data[]=array(id=>2,parentid=>0,name=>美国);$data[]=array(id=>3,parentid=>0,name=>韩国);$data[]=array(id=>4,parentid=>1,name=>北京);$data[]=array(id=>5,parentid=>1,name=>上海);$data[]=array(id=>6,parentid=>...

php在多维数组中根据键名快速查询其父键以及父键值的代码_php技巧

我这么想的: 遍历一遍多维数组,将所有的键建立索引生成一个一维数组; 每次通过键名去查这个键的上级数组及数据 OK,代码如下 indexKey创建索引数组函数: 代码如下:/** * FILE_NAME : arr.php FILE_PATH : test/ * 在多维数组中根据键名快速查询其父键以及父键值 * * @copyright Copyright (c) 2006-2010 mail:levi@cgfeel.com * @author Levi * @package test.arr * @subpackage * @version 2011-04-29 */ header("Content-Ty...

phpfputcsv命令写csv文件遇到的小问题(多维数组连接符)_php技巧【图】

命令: fputcsv() 命令格式:int fputcsv ( resource handle [, array fields [, string delimiter [, string enclosure]]] ) 命令解析:fputcsv() 将一行(用 fields数组传递)格式化为 CSV 格式并写入由 handle指定的文件。返回写入字符串的长度,出错则返回 FALSE。 可选的 delimiter参数设定字段分界符(只允许一个字符)。默认为逗号:,。 可选的 enclosure参数设定字段字段环绕符(只允许一个字符)。默认为双引号:"。 编写...

php中经典方法实现判断多维数组是否为空_php技巧

代码如下://判断一个数组是否为空 /** array( ); 空 array( array( ), array( ), array( ) ); 空 array( array( ), array( array( ), array( 1=>1 ) ), array( ) ); 非 空 */ function is_array_null($value) { if (empty($value)) { return $value; } else { return is_array($value) ? array_map('array_null', $value) : addslashes($value); } }

PHP多维数组的排序问题根据二维数组中某个项排序_php技巧【代码】

PHP内置函数 array_multisort 要求每个数组大小一样 $areas是地区的二维数组,包含人数和次数,现在要按这2种数进行降序排序 代码如下:foreach($areaArray as &$areas) { $times = $numbers = array(); foreach($areas as $province => $v) { $times[$province] = $v[times]; $numbers[$province] = $v[numbers]; } array_multisort($times, SORT_DESC, $numbers, SORT_DESC, $areas); } 比如有个多为数组: 代码如下:$arr = ar...

php删除一个数组中的某个值.兼容多维数组!_php技巧

代码如下:function array_remove_key($array, $keys) { $num = count($keys); $num_last = $num - 1; $this_array_0 = &$array; $last_key = $keys[$num_last]; for ($i = 0; $i < $num_last; $i++) { $this_key = $keys[$i]; $this_var_name = this_array_ . $i; $next_var_name = this_array_ . ($i + 1); if (!array_key_exists($this_key, $$this_var_name)) { break; } $$next_var_name = &${$this_var_name}[$this_key]; } u...

php比较多维数组中值的大小排序实现代码_php技巧

如果值没有重复的情况,可以先用array_flip()来交换键和值,然后krsort(),最后再array_flip()交换回来,就可以比较大小了。如果要截取数组,可用array_slice()。 如果有值重复的情况,就要用到一些排序算法了,不过php有很强大的函数uasort(),使用自定义的比较函数对数组中的值进行排序并保持索引关联,usort()则会重建索引。 代码如下:function cmp($a, $b){ if ($a["vote_num"] == $b["vote_num"]) { return 0; } return ($a[...

解析PHP将对象转换成数组的方法(兼容多维数组类型)_php技巧

代码如下: /** * @author 脚本之家 * @date 2013-6-21 * @todo 将对象转换成数组 * @param unknown_type $obj * @return unknown */ function object_to_array($obj){ $_arr = is_object($obj) ? get_object_vars($obj) :$obj; foreach ($_arr as $key=>$val){ $val = (is_array($val) || is_object($val)) ? $this->object_to_array($val):$val; $arr[$key] = $val; } return $arr; }这样就可以了。