コード ```SQLの実行結果を配列に格納しています ```PHP 現在コーディングしている配列 while ($result = $stmt->fetch(PDO::FETCH_ASSOC)) { $MachineToolData[$Cnt]=array($result['id'],$result['pkno'],$result['tno'],$result['gno'],$result['name']); $Cnt++; } 配列を使う側 echo $MachineToolData[$Cnt][0]; echo $MachineToolData[$Cnt][1]; echo $MachineToolData[$Cnt][2]; echo $MachineToolData[$Cnt][3];
使う側を下記のような項目で直観的にわかるようにしたいのですが、コーディング方法が思いつきません。
ご教示願えないでしょうか?
どう使えば良いか…?
echo $MachineToolData['id'];
echo $MachineToolData['pkno'];
echo $MachineToolData['gno'];
echo $MachineToolData['name'];
どう配列を作ればよいか…?
while ($result = $stmt->fetch(PDO::FETCH_ASSOC)) {
$MachineToolData=array(array('id'=>$result['id'],'pkno'=>$result['pkno'],'tno'=>$result['tno'],'gno'=>$result['gno'],'name'=>$result['name']));
$Cnt++; }
追記 詳細なコード追記します
PHP
1配列作成側(SQL実行側) 2 public function GetMachineToolData(string $MysqlToolDataTableName): array{ 3 4 $MachineToolData; 5 6 try{ 7 $pdo = new PDO(self::DSN,self::USER,self::PASSWORD); 8 }catch(PDOException $e){ 9 echo "MySQL接続エラー: " .$e->getMessage(); 10 } 11 12 $stmt = $pdo->query('select '.$MysqlToolDataTableName . '.id,pkno,tno,gno,tool_name.name,nom,tool_suf.suf_name,sufatr, 13 lengthA,diameter,lifetime,usetime,lifenumber,usenumber,tool_itf.itf,taprfeed,taptype,thrust,horsepower 14 from '.$MysqlToolDataTableName .',tool_name,tool_suf,tool_itf 15 where ' .$MysqlToolDataTableName .'.name=tool_name.t_id 16 and ' .$MysqlToolDataTableName .'.suf=tool_suf.suf_id 17 and '.$MysqlToolDataTableName . '.itf=tool_itf.itf_id 18 order by id desc'); 19 20 $Cnt=0; 21 while ($result = $stmt->fetch(PDO::FETCH_ASSOC)) { 22 23 $MachineToolData[$Cnt]=array( $result['id'],$result['pkno'],$result['tno'],$result['gno'],$result['name'],$result['nom'],$result['suf_name'], 24 $result['sufatr'],$result['lengthA'],$result['diameter'],$result['lifetime'],$result['usetime'], 25 $result['lifenumber'],$result['usenumber'],$result['itf'],$result['taprfeed'],$result['taptype'], 26 $result['thrust'],$result['horsepower']); 27 $Cnt++; 28 } 29 30 return $MachineToolData; 31 32 } 33 34呼び出し側 35$MachineToolData=$objDB->GetMachineToolData(MYSQL_TOOLDATA_TABLE_NAME); 36 37function SetTableData($MachineToolData){ 38 39 $Cnt=0; 40 41 while (empty($MachineToolData[$Cnt][2]) <> True) { 42 43 echo "<tr>"; 44 echo "<td>"; 45 echo $MachineToolData[$Cnt][0]; 46 echo "</td>"; 47 echo "<td>"; 48 echo $MachineToolData[$Cnt][1]; 49 echo "</td>"; 50 echo "<td>"; 51 echo $MachineToolData[$Cnt][2]; 52 echo "</td>"; 53 echo "<td>"; 54 echo $MachineToolData[$Cnt][3]; 55 echo "</td>"; 56 echo "<td>"; 57 echo $MachineToolData[$Cnt][4]; 58 echo "</td>"; 59 echo "<td>"; 60 echo $MachineToolData[$Cnt][5]; 61 echo "</td>"; 62 echo "<td>"; 63 echo $MachineToolData[$Cnt][6]; 64 echo "</td>"; 65 echo "<td>"; 66 if($MachineToolData[$Cnt][7]==0){ 67 echo "" . ' '; 68 }else{ 69 echo "重量" . ' '; 70 } 71 echo "</td>"; 72 echo "<td>"; 73 if($this->mathine_name=="VORTEX"or"FJV250"or"HCN"or"HCN5000"or"HCN68001_1"or"HCN68001_2"){ 74 echo $MachineToolData[$Cnt][8]/10000 . ' '; 75 }else{ 76 echo $MachineToolData[$Cnt][8]/1000 . ' '; 77 } 78 echo "</td>"; 79 echo "<td>"; 80 if($this->mathine_name=="VORTEX"or"FJV250"or"HCN"or"HCN5000"or"HCN68001_1"or"HCN68001_2"){ 81 echo $MachineToolData[$Cnt][9]/10000 . ' '; 82 }else{ 83 echo $MachineToolData[$Cnt][8]/1000 . ' '; 84 } 85 echo "</td>"; 86 echo "<td>"; 87 echo round($MachineToolData[$Cnt][9]/60) . ' '; 88 echo "</td>"; 89 echo "<td>"; 90 echo round($MachineToolData[$Cnt][10]/60) . ' '; 91 echo "</td>"; 92 echo "<td>"; 93 echo $MachineToolData[$Cnt][11] . ' '; 94 echo "</td>"; 95 echo "<td>"; 96 echo $MachineToolData[$Cnt][12] . ' '; 97 echo "</td>"; 98 echo "<td>"; 99 echo $MachineToolData[$Cnt][13] . ' '; 100 echo "</td>"; 101 echo "<td>"; 102 echo $MachineToolData[$Cnt][14] . ' '; 103 echo "</td>"; 104 echo "<td>"; 105 if($MachineToolData[$Cnt][15]==0){ 106 echo "" . ' '; 107 }else{ 108 echo "同期" . ' '; 109 } 110 echo "</td>"; 111 echo "<td>"; 112 echo $MachineToolData[$Cnt][16] . ' '; 113 echo "</td>"; 114 echo "<td>"; 115 echo $MachineToolData[$Cnt][17] . ' '; 116 echo "</td>"; 117 echo "</tr>"; 118 119 $Cnt++; 120 121 } 122 echo "</TABLE>"; 123 echo "</body>"; 124 echo "</html>"; 125 126 } 127 128}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/02/23 00:57
2021/02/23 01:00
2021/02/23 01:07
2021/02/23 01:11
2021/02/23 01:19
2021/02/23 01:24
2021/02/23 01:32 編集
2021/02/23 01:33
2021/02/23 01:33
2021/02/23 02:05 編集
2021/02/23 02:06
2021/02/23 02:23
2021/02/23 02:26
2021/02/23 02:28
2021/02/23 02:35
2021/02/23 02:38
2021/02/23 02:43
2021/02/23 03:01