您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php 如何访问对象的属性

2025/5/25 12:51:34发布15次查看
php 访问对象的属性(当属性的键名称为数字时)的方法 {}
这篇文章下面写了一个 将 数组转化成对象的方法, 这个数组的键为数字(即数组为索引数组), 访问对象的时候, $obj->1 显然错位,那到底该怎么样访问对象的数字属性呢? 
$obj->{1} ; 表示的是访问对象 $obj 的属性的键为 1 对应的属性值!
<?php /** * created by phpstorm. * user: fly.yuan * date: 16-6-14 * time: 下午2:26 */ function toobject($array) { //$o = (object)''; $o = new \stdclass(); foreach ($array as $key => $value) { if (is_array($value)) { $value = toobject($value); } $o->$key = $value; } return $o; } $obj = toobject(array( array(1=>23))); echo "<pre>"; //json encode, and then decode your object passing true as the second param in the decode function. //this will return an associative array. //var_dump(json_decode(json_encode($obj), true)); var_dump($obj->{0}->{1}); $a = array('123' => '123', '123foo' => '123foo'); $o = json_decode(json_encode($a), true); var_dump($o); function recursive_cast_to_array($o) { $a = (array)$o; foreach ($a as &$value) { if (is_object($value)) { $value = recursive_cast_to_array($value); } } return $a; } $myvar = toobject(array('highlighting' => array('448364' => array('data' => array(123))))); $arr = recursive_cast_to_array($myvar); echo 134; var_dump( $myvar->highlighting->{448364}->data->{0}); var_dump(null == false); $test = array(); $test['$.router'] = 123; var_dump($test);
以上就是php 如何访问对象的属性的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product