亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

創建多數組以在數據表 PDO、PHP 中顯示

創建多數組以在數據表 PDO、PHP 中顯示

PHP
SMILET 2023-05-26 14:16:49
希望你好。我有一個查詢,結果如下:我需要這是一個多數組來將它顯示在數據表中,如下所示:Article, Products,  Supname,    Week1, Week2, Week3, Week4, Week5, Week6, and so on1         Product 1  Supplier 1  0,27   0,6    0,36   0,58   0,78   0,32  and so on我用 PDO 得到了所有結果,因為我們使用的是 SQL 服務器,我創建數組的代碼是這樣的:$pos = 0;$x = 0; $End = count($getAll);$html = array();$html2 = array();    while ($x <= 53) {     if ($x == 0) {           $html[] = array('Articleno' => $getAll[$pos+1]["ArtNo"], 'Name' => ''.$getAll[$pos+1]["Product"], 'Supname' => $getAll[$pos+1]["Levnamn"]);    }     $html2 = array('M'.$getAll[$pos]["Weekno"] => $getAll[$pos]["Qty"].' , '.$getAll[$pos]["Sold"]);    $html = array_merge($html, $html2);    $x++;    $pos++;    if ($x == 53){         $x=0;    }    if ($pos==$End){        $x=70;    }    }結果還差得遠,我嘗試了很多不同的解決方案,但這是最接近的一個。我缺少 product2 的 alla 周信息。最多可填充 150 種產品。有什么建議 ?
查看完整描述

1 回答

?
慕蓋茨4494581

TA貢獻1850條經驗 獲得超11個贊

您可以像這樣構建數組:


$stm = $pdo->query('your SQL query');

$output = [];

while($row = $stm->fetch(PDO::FETCH_ASSOC))

{

  $ident = $row['Articleno'].';'.$row['Product'].';'.$row['Supname'];

  $ref = &$output[$ident];

  if(!is_array($ref))

  {

    $ref['Article'] = $row['Articleno'];

    $ref['Product'] = $row['Product'];

    $ref['Supname'] = $row['Supname'];

    $ref['Week1'] = [0,0];

    $ref['Week2'] = [0,0];

    $ref['Week3'] = [0,0];

    $ref['Week4'] = [0,0];

    $ref['Week5'] = [0,0];

    $ref['Week6'] = [0,0];

  }

  $weekNo = $row['Weekno'];

  $ref['Week'.$weekNo] = [$row['Qty'], $row['Sold']];

}

echo json_encode(array_values($output));


查看完整回答
反對 回復 2023-05-26
  • 1 回答
  • 0 關注
  • 143 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號