簡體   English   中英

推入二維PHP數組

[英]Pushing into a 2 dimensional PHP array

朋友們

我正在創建一個drupal表單(這是我的第二個表單!),並且從數據庫中獲取有關Coursework的信息。 一個非常簡單的coursework_idcoursework_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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM