当前位置:首页 » 编程语言 » php数组转换为对象

php数组转换为对象

发布时间: 2022-04-21 22:44:43

php怎么将数组转换为json格式的数据

一、json_encode()

[php]view plain

  • <?php

  • $arr=array('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);

  • echojson_encode($arr);

  • ?>

  • 输出

    [php]view plain

  • {"a":1,"b":2,"c":3,"d":4,"e":5}

  • 再看一个对象转换的例子:

    [php]view plain

  • $obj->body='anotherpost';

  • $obj->id=21;

  • $obj->approved=true;

  • $obj->favorite_count=1;

  • $obj->status=NULL;

  • echojson_encode($obj);

  • 输出

    [php]view plain

  • {

  • "body":"anotherpost",

  • "id":21,

  • "approved":true,

  • "favorite_count":1,

  • "status":null

  • }


  • 由于json只接受utf-8编码的字符,所以json_encode()的参数必须是utf-8编码,否则会得到空字符或者null。当中文使用GB2312编码,或者外文使用ISO-8859-1编码的时候,这一点要特别注意。
  • 二、索引数组和关联数组

    PHP支持两种数组,一种是只保存"值"(value)的索引数组(indexed array),另一种是保存"名值对"(name/value)的关联数组(associative array)。

    由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式。

⑵ 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 数组和对象的问题

function get_obj_by_id($objs, $id)
{
if(!empty($objs))
{
foreach($objs as $obj)
{
if($obj->id == $id)
return $obj;
}
}
return null
}

恩,为什么你的obj->id是private的呢
希望能解决您的问题。

⑷ PHP数组转为对象怎么处理

按照你的要求编写的php程序如下

<?php

$s='{"data":["阿里:65","支付宝:2","微信:1"]}';

$obj=json_decode($s,true);

$arr=$obj['data'];

$c=array();

for($i=0;$i<count($arr);$i++){

$b=array();

$a=explode(':',$arr[$i]);

$b[$a[0]]=$a[1];

$c[$i]=$b;

}

$result['data']=$c;

echo json_encode($result,JSON_UNESCAPED_UNICODE);

?>

⑸ 如何将PHP对象数组转换成普通数组

在利用jQuery EasyUI框架进行程序开发时,碰到前台将JSON格式数据传递到服务器后台,经php的json_decode函数转换成的数组由于为对象数组,php程序无法对数据进行正常处理的情况,为此需要开发一个PHP回调函数(objarray_to_array)将对象数组转换成普通数组。
/**
* 对象数组转为普通数组
*
* AJAX提交到后台的JSON字串经decode解码后为一个对象数组,
* 为此必须转为普通数组后才能进行后续处理,
* 此函数支持多维数组处理。
*
* @param array
* @return array
*/
function objarray_to_array($obj) {
$ret = array();
foreach ($obj as $key => $value) {
if (gettype($value) == "array" || gettype($value) == "object"){
$ret[$key] = objarray_to_array($value);
}else{
$ret[$key] = $value;
}
}
return $ret;
}

⑹ php中如何把数组里的值 转换成一个对象

$array[$x]->shop();???

你说的我糊涂,什么叫shop类型?shop 不是一个类么,$x 不就是 shop 的对象么

你的对象声明也有错误 应该是 $x = new shop;//没有后面的括号
我猜你的意思是不是说 $array[$x] 如何转换成 shop 的对象,是么?
你把对象放在数组的用意是什么,换句话说,这个数组是干什么用的?
你要知道 $array[$x] 是无法调用的。

⑺ php中数组对象转普通数组

/**
* 对象数组转为普通数组
* 此函数支持多维数组处理。
*
* @param array
* @return array
*/
function objarray_to_array($obj) {
$ret = array();
foreach ($obj as $key => $value) {
if (gettype($value) == "array" || gettype($value) == "object"){
$ret[$key] = objarray_to_array($value);
}else{
$ret[$key] = $value;
}
}
return $ret;
}
你可以去后盾人平台看看,里面的东西不错

⑻ PHP如何对输出的数组和对象进行转义

比如说这个
$body = str_ireplace(array('alt=""','alt=\'\''),'',$body);
echo '';

⑼ php的数组怎么转成对象

数组变量前面加(object),可以转为对象。

⑽ php生成数组转成json后,在转化为对象

你可以参考一下我的建议,1.普通:若php关联数组不含有中文,直接json_encode转换。转换之后用json_deconde($stuJson)转为php对象。
<?php
$stu = array("name"=>"li","age"=>"35");
$stuJson = json_encode($stu);
还有什么疑问的话,可以多去后盾们看一下相关的视频,这样你更清楚

热点内容
光可以存储 发布:2025-01-27 13:14:47 浏览:676
手机网盘加密文件 发布:2025-01-27 13:11:43 浏览:694
唐山有线机顶盒密码是多少 发布:2025-01-27 13:10:25 浏览:251
如何让电脑上拥有移动式服务器 发布:2025-01-27 13:04:46 浏览:67
漫威超级战争如何配置核心组合 发布:2025-01-27 13:03:19 浏览:954
c语言五子棋程序 发布:2025-01-27 12:58:43 浏览:157
win10流媒体服务器怎么搭建 发布:2025-01-27 12:58:04 浏览:384
组合公式的算法 发布:2025-01-27 12:45:50 浏览:278
落樱小屋哪里下载安卓 发布:2025-01-27 12:35:13 浏览:72
微信服务器IP跳转 发布:2025-01-27 12:26:54 浏览:74