<?
$str=array("aa"=>"a",1=>"b");
function arr2obj($arg_array) {
$tmp = new stdClass; // start off a new (empty) object
foreach ($arg_array as $key => $value) {
if (is_array($value)) { // if its multi-dimentional, keep going :)
$tmp-> $key = arr2obj($value);
} else {
if (is_numeric($key)) {
$tt="num".$key;// can't do it with numbers :(
$tmp->$tt = $value;
continue;
}
$tmp-> $key = $value;
}
}
return $tmp; // return the object!
}
$str=arr2obj($str);
var_dump($str);
?>
解决方案 »
- 我要找出元素在数组中的位置,请问那里不对啊?
- 请问这个是系统定义的吗 $_GET["currentdir"]
- 为什么mysql语句在dos环境下可以执行,而在php中用mysql_query();却不可以,为什么?
- radio和text命名问题
- preg_match_all中的“array matches”是一个二围数组?不明白
- php可否检查链接是否可用?有没有这个功能?
- php怎么把图片上传到mysql里?
- 我设置了cookie的值ddd,删除後,我重新设置为一个新值,可是显示还是为ddd,例如:...
- js 里面引用PHP返回的数据,为什么不会自己更新呢?
- PHP与C的学习时间之比为多少?
- Apache安装问题!!!!
- 抽奖算法
就像变量不可以用纯数字一样.
单纯这样转换的话.下面的句子就可以实现.
<?php
$array =array('name'=>'gaga','sex' =>'mu');
settype($array,'object'); # or $array = (object)$array;
//print_r($array); #stdClass Object ( [name] => gaga [sex] => mu )
echo $array->name; #gaga
?>