【发布时间】:2013-01-13 10:22:48
【问题描述】:
附加信息 1) 我有多个记录(姓名、年龄、性别),((约翰,10 岁,男),(莎莉,9 岁,女),(杰克,12 岁,男))。
2) 所有这些记录都在数据库中。
3) 我想通过 while 循环将这些记录自动添加到数组中。
我尝试用这些问题提交我的代码,但它提示它的格式不正确。请帮忙。如果需要,欢迎您提供更多信息。
【问题讨论】:
附加信息 1) 我有多个记录(姓名、年龄、性别),((约翰,10 岁,男),(莎莉,9 岁,女),(杰克,12 岁,男))。
2) 所有这些记录都在数据库中。
3) 我想通过 while 循环将这些记录自动添加到数组中。
我尝试用这些问题提交我的代码,但它提示它的格式不正确。请帮忙。如果需要,欢迎您提供更多信息。
【问题讨论】:
试试:
foreach ($con->query("SELECT * FROM table") as $row){
$arr[] = array(
"name" => $row['name'],
"age" => $row['age'],
"gender" => $row['gender']
);
}
$con 是您的连接,table 是您的表名...
那么如果你var_dump$arr 你会看到类似这样的数组结构 =>
array (size=n) // n number of array in $arr
0 =>
array (size=3)
'name' => string 'John' (length=7)
'age' => string '10' (length=2)
'gender' => string 'Male' (length=4)
1 =>
array (size=3)
'name' => string 'Sally' (length=7)
'age' => string '10' (length=2)
'gender' => string 'Female' (length=4)
2 =>
array (size=3)
'name' => string 'Other' (length=7)
'age' => string '10' (length=2)
'gender' => string 'Male' (length=4)
// etc ...
【讨论】:
WHERE age=9,所有记录(年龄等于9)都会返回。并且请更仔细地写下一个问题...
age 列类型是 INT 你不能使用 '' ,否则如果你有类型 VARCHAR 你必须