php 怎么把数组转化成字符串_PHP教程

php中文网
发布: 2016-07-13 10:51:03
原创
1064人浏览过



问题
数组转化成字符串问题
解决方法
问个数组问题,我现在获取得到的一个二维数组变量: $postanswer=$_POST["answer{$showarr['cs_id']}"];
复制代码打印出来的值是: Array

(

[43] => Array

(

[A] => A

[B] => B

)



[42] => Array

(

[C] => C

[D] => D

)



[41] => Array

(

[B] => B

[C] => C

)



[40] => Array

(

[B] => B

[D] => D

)



[39] => Array

(

[A] => A

[D] => D

)



[35] => Array

(

[B] => B

)



)
复制代码现在我想把他们以前面的ID号为组,组内成员以“,”隔开。不知道哪位大侠能帮我看看,感激不尽!


参考答案

php



$myArr = array();

$listArr = array();

foreach ($_POST["answer{$showarr['cs_id']}"] as $key=>$item){

foreach ($item as $key2=>$value){

$listArr[] = $key2.'-'.$value;

}



$myArr[$key] = join(',',$listArr);

}

var_dump($myArr);


复制代码??这样?
参考答案
用t隔开
参考答案
原帖由 yafeikf 于 2009-1-3 14:28 发表 [url=http://bbs.111cn.cn/redirect.php?goto=findpost&pid=813511&ptid=100247]链接标记[img]http://bbs.111cn.cn/images/common/back.gif[/img][/url]


嘿嘿!不行啊!显示: array(5) {

[47]=>

string(3) "A,B"

[46]=>

string(7) "A,B,B,C"

[45]=>

string(11) "A,B,B,C,A,C"

[44]=>

string(15) "A,B,B,C,A,C,B,D"

[36]=>

string(19) "A,B,B,C,A,C,B,D,C,D"

}
复制代码是不是循环问题啊?

[ ]
参考答案
应该可以的!我没有测试过!

$postanswer = $_POST["answer{$showarr['cs_id']}"];

$new_array = array();



for($postanswer as $key => $value) {

if(isset($new_array[$key])) {

$new_array[$key] .= ','.$value;

} else {

$new_array[$key] = $value;

}

}



print_r($new_array);

?>


复制代码
参考答案
换一个思路吧。
且不说怎么实现,先想想你的意图。

这么做是会出问题的,如果你的数组里面有 “,” 呢?
你再怎么把它还原?

赶紧丢掉这个想法,使用 serialize 和 unserialize 吧。
参考答案
原帖由 liexusong 于 2009-1-3 16:47 发表 [url=http://bbs.111cn.cn/redirect.php?goto=findpost&pid=813732&ptid=100247]链接标记[img]http://bbs.111cn.cn/images/common/back.gif[/img][/url]
应该可以的!我没有测试过!



呵呵...不行!顺便挑个错误,循环时应该是foreach而不是for的吧?
参考答案
原帖由 hubinhust 于 2009-1-3 19:13 发表 [url=http://bbs.111cn.cn/redirect.php?goto=findpost&pid=813834&ptid=100247]链接标记[img]http://bbs.111cn.cn/images/common/back.gif[/img][/url]
换一个思路吧。
且不说怎么实现,先想想你的意图。

这么做是会出问题的,如果你的数组里面有 “,” 呢?
你再怎么把它还原?

赶紧丢掉这个想法,使用 serialize 和 unserialize 吧。
这个应该不会出现,至少在这里!因为我提交的是测试提的答案ABCD。
参考答案
哦~原来我看错了!应该这样的!

$postanswer = $_POST["answer{$showarr['cs_id']}"];

$new_array = array();



foreach($postanswer as $element) {

foreach($element as $key => $value) {

if(isset($new_array[$key])) {

$new_array[$key] .= ','.$value;

} else {

$new_array[$key] = $value;

}

}

}



print_r($new_array);

?>


复制代码
参考答案
原帖由 liexusong 于 2009-1-3 20:10 发表 [url=http://bbs.111cn.cn/redirect.php?goto=findpost&pid=813889&ptid=100247]链接标记[img]http://bbs.111cn.cn/images/common/back.gif[/img][/url]
哦~原来我看错了!应该这样的!



斑竹,这次还不行,居然输出这: Array

(

[A] => A,A

[D] => D,D,D

[B] => B,B

[C] => C

)
复制代码

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/632598.htmlTechArticle问题 数组转化成字符串问题 解决方法 问个数组问题,我现在获取得到的一个二维数组变量: $postanswer=$_POST["answer{$showarr['cs_id']}"]; 复制代...
相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号