数组问题中的PHP数组

时间:2016-09-29 16:40:00

标签: php arrays

我有一个如下所示的数组:

{
  "quantity":"1",
  "product_id":"41",
  "option[232]":"28",
  "option[231][]":"25"
}

我在foreach循环中运行上面的$ key => $值。但是当我尝试将它们连接成一个字符串时,我得到一个数组转换为字符串错误。

例如:$result = $this->db->query("SELECT a.quantity quantity, b.name optionname FROM " . DB_PREFIX ."product_option_value a, " . DB_PREFIX ."option_value_description b WHERE a.option_value_id = b.option_value_id AND a.product_option_id=".$key." AND a.product_option_value_id=".$value." AND a.product_id=".$product_info['product_id']." AND a.subtract=1");

当我删除"option[231][]":"25"的最后一个条目时,它可以正常工作。无论如何我可以将"option[231][]"转换为"option[231]"

我通过json发布到php页面。

由于

1 个答案:

答案 0 :(得分:1)

只需使用print_r函数转换多维数组,例如

option[231] = print_r(option[231], TRUE);

或者,如果您不喜欢结果语法,请在现有的foreach循环中嵌套一个foreach循环,该循环在变量是数组时执行,例如

if(is_array(option[$x])){
  $y = '';
  foreach(option[$x] as $value){
    $y .= $value;
  }
  option[$x] = $y;
}