[英]Pushing into a 2 dimensional PHP array
朋友們
我正在創建一個drupal表單(這是我的第二個表單!),並且從數據庫中獲取有關Coursework的信息。 一個非常簡單的coursework_id和coursework_name 。
現在,在Drupal中填充下拉菜單的常用格式如下:
$form['selected'] = array(
'#type' => 'select',
'#title' => t('Selected'),
'#options' => array(
0 => t('No'),
1 => t('Yes'),
),
'#default_value' => $category['selected'],
'#description' => t('Set this to <em>Yes</em> if you would like this category to be selected by default.'),
);
我試圖在上述選擇表單的#options部分中傳遞我的coursework_id和coursework_name。
到目前為止,我已經提出了以下代碼行:
foreach ($results as $result) {
$courseworks = (array($result->coursework_id => $result->coursework_name));
}
這與選項的所需格式匹配,但是我只能存儲一個結果:
Array
(
[2] => Java Programming
)
我怎么能以某種方式推動新結果。 我已經從PHP嘗試過array_push,但是在這種情況下它確實起作用,據我了解,它只能附加一個值。
親切的問候,-D
您應該嘗試:
foreach ($results as $result) {
$courseworks[$result->coursework_id] = $result->coursework_name;
}
基本上,您需要在$results
數組的每次迭代中重新定義$courseworks
。 試試這個吧;
$courseworks = array();
foreach ($results as $result)
{
$courseworks[] = (array($result->coursework_id => $result->coursework_name));
}
以下應該為您做。 您首先定義數組,然后創建鍵並分配相對值:
$courseworks = array();
foreach ($results as $result) {
$courseworks[$result->coursework_id] = $result->coursework_name;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.