我是PHP的新手。
我想转换这个数组;
array(2) {
[0]=> object(stdClass)#24 (1) {
["item"]=> string(1) "2"
}
[1]=> object(stdClass)#25 (1) {
["item"]=> string(1) "1"
}
}
像这样的字符串
string(1) "2", string(2)"1", string(3)"0"
...
这样做的方法是什么?
注意:我尝试添加到" row()"在PHP代码中。但总是单一的结果。 例如:仅字符串(1)" 2"
答案 0 :(得分:2)
你在问一些奇怪的事情。但这是一个答案:
让我们说$arr
是你的
array(2) { [0]=> object(stdClass)#24 (1) { ["item"]=> string(1) "2" }
[1]=> object(stdClass)#25 (1) { ["item"]=> string(1) "1" } }
然后你的代码将它转换成你提到的那个字符串:
$str=''; $idx=0;
foreach ($arr as $obj) {
$str.=($idx==0?'':', ').'string ('.$idx++.') "'.$obj->item.'"';
}
现在你在$str
var。
或者,如果我的第一个奇怪的猜测错了。这是对我更有意义的另一个,但没有被你问过:
foreach ($arr as $obj) {
echo $obj->item; // or do whatever you want with this value which is string type
}
答案 1 :(得分:0)
看起来你有一个数组对象,你需要在这里使用一个foreach循环,你的数组值是" 2"," 1"。不是string(1) "2"
,string(1) "1"
,您使用 var_dump ,以便数组显示类型和长度。
array(2) {
[0]=> object(stdClass)#24 (1) {
["item"]=> string(1) "2"
}
[1]=> object(stdClass)#25 (1) {
["item"]=> string(1) "1"
}
}
要使用foreach获取每个值,请参阅下面的示例,让您的数组名称为$arr
。
foreach($arr as $val){
echo $val->item;
}
这会将数组值显示为:" 2"," 1"。