Php 分别获取MySQL列值
我的MySQL表中有一列:Php 分别获取MySQL列值,php,mysql,Php,Mysql,我的MySQL表中有一列: 1st row-> 5,3 2nd row-> 4,5,1,3 3rd row-> 1,2 如何分别获取这些值,如下所示: 1st row-> 5 1st row-> 3 2nd row-> 4 2nd row-> 5 2nd row-> 1 2nd row-> 3 我试过这个$stmt=$conn->prepare(“SELECT*FROM users SUBSTRING_INDEX(Following,,,
1st row-> 5,3
2nd row-> 4,5,1,3
3rd row-> 1,2
如何分别获取这些值,如下所示:
1st row-> 5
1st row-> 3
2nd row-> 4
2nd row-> 5
2nd row-> 1
2nd row-> 3
我试过这个$stmt=$conn->prepare(“SELECT*FROM users SUBSTRING_INDEX(Following,,,,1)=Following”)代码>但不工作类似的内容:
$desired_array=array();
$query=mysqli_query($db_conn, "SELECT column_with_commas FROM table_name");
$i=0;
while($array=mysqli_fetch_assoc($query)){
$row_array=explode(',', $array['column_with_commas']);
foreach($row_array as $value){
$desired_array[$i][]=$value;
}
$i++;
}
//var_dump($desired_array);
foreach($desired_array as $key => $value){
for($i=0; $i<count($value); $i++){
echo 'row '.($key+1).' : '.$value[$i].'<br />';
}
}
//echo $desired_array[0][0]; //output the first value of row 1
//echo $desired_array[1][0]; //output first value of row 2
//echo $desired_array[0][1]; //out put second value of row 1
您必须使用php或某些编程/脚本语言,或者使用存储的procedure@CodeBird:如何使用phpIt听起来你应该规范化你的数据。@学习者如果没有数组,你是什么意思,你必须将它们放入数组中,然后在数组中访问它们,这是最好的方法,否则,您必须为每个值设置一个变量名,这是一种非常糟糕的做法。现在您可以回显$desired_array[0][0]
以获取第1行的第一个值<代码>$desired_数组[1][0]
第2行的第一个值<代码>$desired_数组[0][1]第1行的第二个值等…编号。。我得到的输出是这样的Array([0]=>Array([0]=>2[1]=>4)[1]=>Array([0]=>2[1]=>4[2]=>4[3]=>5)
。我如何得到这样的输出2 4 5 8…@学习者更新了我的答案,查看回音。你只需访问数组中的值,正如变量转储显示的那样[0][0]将给出2[0][1]我在这里遇到了另一个问题。这些代码一次又一次重复。第1:2行第1:4行第2:2行第2:4行第2:5行
应该是第1:2行第1:4行第2:4行第2:5行
。第2行重复第1行,第3行重复第1行和第2行,与每行一样。@Learner更新了while循环
row 1 : 5
row 1 : 3
row 2 : 4
row 2 : 5
row 2 : 1
row 2 : 3
row 3 : 1
row 3 : 2