我正在查询我的postgres数据库,并获得如此名称和ID:
$datesQuery = "SELECT date_ridden, id from dates WHERE user_id=$userId"; //query
$theDates = pg_query($db, $datesQuery); //execute query
$dates=array(); //want to use this array to have the key as id and value as date_ridden
我想创建我的$ dates数组,其中id为键,date_ridden为值。
目前我正在做以下事情(这不是我想做的事):
while( $date = pg_fetch_row($theDates) ){
$dates[]['value'] = $date[1]; //date id is value
$dates[]['label'] = $date[0]; //date (in text form) is the label
}
我觉得这应该是一件非常简单的事情,但由于某些原因无法弄明白。
答案 0 :(得分:1)
我相信您正在寻找的循环结构是:
while( $date = pg_fetch_row($theDates) ){
$dates[$date[1]] = $date[0];
}
如果我误解了,那么您当前尝试的问题是它将id和标签作为单独的数组索引追加到$dates
。
而是试试这个:
while( $date = pg_fetch_row($theDates) ){
$dates[] = array('value' => $date[1],
'label' => $date[0]);
}
通过此示例,您可以访问Value = $dates[0]['value'], Label = $dates[0]['label']
希望其中一个有所帮助。
答案 1 :(得分:0)
如果我明白你的要求,那就是这样的
while( $date = pg_fetch_row( $theDates ) ) {
$dates[][$date[1]] = $date[0];
}
或者如果您想要访问$ date ['some id']那么
while( $date = pg_fetch_row( $theDates ) ) {
$dates[$date[1]] = $date[0];
}