本文目录一览:
php怎么把对象转为数组
这里定义2个php匿名对象和数组相互转换的函数,代码如下:
function array2object($array) {
if (is_array($array)) { $obj = new StdClass(); foreach ($array as $key = $val){ $obj-$key = $val; } } else { $obj = $array; } return $obj;}function object2array($object) { if (is_object($object)) { foreach ($object as $key = $value) { $array[$key] = $value; } } else { $array = $object; } return $array;}
用法示例如下:
$array = array('foo' = 'bar','one' = 'two','three' = 'four');$obj = array2object($array);print $obj-one; // output's "two"$arr = object2array($obj);print $arr['foo']; // output's bar
php有什么函数能够直接转换数组?
因为不支持代码标签了,上面放图,下面是代码
php API 中没有可以直接打到效果的函数,在此封装了一个
代码部分
?php
/**
* $list 数组
* $column_num 数据列数量
*/
function groupBy($list, $column_num){
$group = [];
$keys = array_keys($list);
for ($i=0; $i$column_num; $i++){
$item = [];
foreach ($keys as $key){
$item[$key] = $list[$key][$i];
}
$group[] = $item;
}
return $group;
}
$temp = [
'bg' = ['bg1','bg2','bg3'],
'img' = ['img1','img2','img3'],
'url' = ['url1','url2','url3'],
];
$list = groupBy($temp,3);
echo(json_encode($list));
?
php怎么把关联数组转成索引数组?
PHP和PERL、VB不同,其只有“数组”,没有单独的“关联数组”类型,实际上PHP的所有数组都是关联数组,当没有指定键值的时候,键值为0、1、2??
php中定义数组的方法:
PHP定义数组的格式
数组名=array();
如:$aa=array();//这样就定义了一个数组,
之后给元素赋值:
$aa[0]="9016";
$aa[1]="9017";
$aa[2]="9018";
PHP输出数组的方法:
foreach($aa as $val)
{echo$val;}
也可以在定义数组时直接赋值
$aa=array(0="9016",1="9017";2="9018");
PHP的数组还可以用字符做下标,不一定要数字.
$aa["name"]="Joan";
$aa["num"]="9018";
$aa["email"]="abc@abc.com";
也可以这样
$aa=array("name"="joan","num"="9018","email"="abc@abc.com");
将一个一维数组的元素也定义为数组,就是一个二维数组,
$aa=array(0="a1",1="a2");
$bb=array(0="b1",1="b2");
$cc=array(0=$aa;1=$bb);此时,$cc[0]也是一个数组,$cc[1]也是一个数组,$cc就是一个二维数组。
同理,三维,四维数组也可以继续定义下去。
数组的元素不仅于数字和字符串,可以是类的对象。