假设我有以下表格信息
+-------------+---------------+
+ id + letters +
+-------------+---------------+
+ 1 + a, b, c, d, e +
+-------------+---------------+
我正在尝试捕获列的值并将它们存储在变量中:
$result = mysql_query("SELECT letters FROM tbl WHERE id=1");
while ($data = mysql_fetch_array($result)) {
// Declare captured db variables
$letter1 = ** what comes here? **;
$letter2 = ** what comes here? **;
}
答案 0 :(得分:3)
您可以尝试这种方式:
$result = mysql_query("SELECT letters FROM tbl WHERE id=1");
$letters = explode(',',mysql_fetch_array($result));
现在您可以使用数组访问任何字母,例如$letters[0]; //a
。
答案 1 :(得分:1)
这个怎么样?
$result = mysql_query("SELECT letters FROM tbl WHERE id=1");
while ($data = mysql_fetch_array($result)) {
// Declare captured db variables
/* list($letter1,$letter2,$letter3,$letter4,$letter5) = explode(',' , $data['letters']);
*/
$letters = array();
// letters array will have the exploded letters
$letters = explode(',' , $data['letters']);
}
你的问题不清楚。请提供更多详细信息以获得更好的答案:)
答案 2 :(得分:1)
而不是
$ letter1
$ letter2
我会做一个'数组爆炸。
$letter = explode(',', $data['letters']);
这样你就可以用简单的$ letter [0]或$ letter [1]
来表达你的字母现在上面的代码假设您只运行while循环ONCE。
如果你不止一次地浏览了while循环,我就这样做:
$letter[] = explode(',', $data['letters']);
由$ letter [0] [0]访问 - 第一个[]是获取时的数字实例,第二个[]是你想要获取的字母。
另一件事
Mysql已经过时/不会被使用/非常不安全因此我建议你找到另一种mysql替代品,例如mysqli或PDO - 最好在学习时使用这些,因为这样你就可以避免陷入困境糟糕的惯例。