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的代表你会费心回答这样的问题/耸耸肩