如何在codeigniter中将数组转换为字符串?

时间:2016-05-19 16:28:19

标签: php arrays string codeigniter

我是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"

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"。