Php 访问数组元素

Php 访问数组元素,php,arrays,Php,Arrays,我有一个数组,如下所示: Array ( [1] => 1|1,2,3 [2] => 2|2,3,7,11 [3] => 3|1,2,4,8,12 ) foreach ($new_array as $key => $value) { $new_arr = $parsed_item = explode('|',$value); print_r($new_arr); } 它被称为$new\u数组 我使用管道拆分数组的元素,如下

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

Array
(
    [1] => 1|1,2,3
    [2] => 2|2,3,7,11
    [3] => 3|1,2,4,8,12
)
foreach ($new_array as $key => $value) {

    $new_arr = $parsed_item = explode('|',$value);

    print_r($new_arr);

}
它被称为
$new\u数组

我使用管道拆分数组的元素,如下所示:

Array
(
    [1] => 1|1,2,3
    [2] => 2|2,3,7,11
    [3] => 3|1,2,4,8,12
)
foreach ($new_array as $key => $value) {

    $new_arr = $parsed_item = explode('|',$value);

    print_r($new_arr);

}
这给了我三个数组:

Array
(
    [0] => 1
    [1] => 1,2,3
)
Array
(
    [0] => 2
    [1] => 2,3,7,11
)
Array
(
    [0] => 3
    [1] => 1,2,4,8,12
)
我不知道如何访问
$new\u arr
数组的元素-对于每个循环,我想访问元素,编写一些SQL,因此我最终会得到:

$sql = "UPDATE my_table SET includes = '1,2,3' WHERE id = 1;"
$sql = "UPDATE my_table SET includes = '2,3,7,11' WHERE id = 2;"
$sql = "UPDATE my_table SET includes = '1,2,4,8,12' WHERE id = 3;"
但是我不知道如何访问
$new\u arr
数组的元素

我试过这个:

foreach ($new_arr as $key2 => $value2) {
    $f1 = $value2[0];
    echo $f1 . "<br>";
}

所以我想这是不对的。

通常不鼓励使用逗号分隔的值,因为在使用sql管理此类字符串以提取单个值时遇到困难

但无论如何 您应该将分解添加到数组中,例如:

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

      $new_arr[] = $parsed_item = explode('|',$value);


  }

  print_r($new_arr);
那你可以用

foreach ($new_arr as $key => $value) {
    $f1 = $value[0];
    $f2 = $value[1]
    echo $f1 . "<br>" . $f2 . "<br>" ;
}
foreach($new\u arr as$key=>$value){
$f1=$value[0];
$f2=$value[1]
回显$f1。“
”$f2。“
”; }

因此,您可以使用$value[0]作为id列,使用$value[1]作为include列

更改为
$new\u arr[]=$parsed\u item=explode(“|,$value”)通常情况下,将逗号分隔的数据放在一列中是一个非常糟糕的主意,因为这样以后几乎不可能处理它。我不确定“弃用”是不是您在这里要找的词。你是说“气馁”吗?即使如此,谁会气馁,在什么情况下?我可以看到很多合理的理由,您可能需要处理这种形式的数据。@IMSoP答案更新为(希望)更好的术语。。一个简短的解释我很惊讶80K的代表你会费心回答这样的问题/耸耸肩