0
CSVファイルから情報を取得して配列に格納し、HTMLテーブルにデータを表示するPHPコードが少しあります。私のコードは現在、一連のforループを使用してテーブルのヘッダ(キー)とテーブルの内容(ステップ)の両方を表示します。私が抱えている問題は、コードをループさせて情報の各配列をリストする方法を試すことができないということです。最後のものだけが表示されます(各ループの$ x変数で指定した量が表示されます)。PHP Loopで配列内のすべての項目を一覧表示する
誰も私にはそれがあまりにappriciatedされるだろう、テーブルにforeachループを使用して複数の単一の値を取得するために助けることができる場合は、次のようは、私のコードは次のとおりです。
<?PHP
// Deals with potential MAC line endings
ini_set("auto_detect_line_endings", true);
// Define function to read info from .CSV
function readCSV($csvFile)
{
$file_handle = fopen($csvFile, 'r');
while (!feof($file_handle))
{
$line_of_text[] = fgetcsv($file_handle, 1024);
}
fclose($file_handle);
return $line_of_text;
}
// Locate the .CSV to read
$csvFile = '500.csv';
$csv = readCSV($csvFile);
// Uses first line of .CSV for keys
$keys = $csv[0];
// For loop to set how many arrays to print
for ($x=1; $x <=2; $x++)
{
$step = $csv[$x];
foreach ($step as $k => $v)
{
$array[$keys[$k]] = $v;
}
echo '<pre>';
print_r($array);
echo '</pre>';
}
// Use data from arrays to build HTML table
print "<table>";
// Header
print "<tr>";
for ($x=0; $x <=10; $x++)
{
print "<th>$keys[$x]</th>";
}
print "</tr>";
//Field data
print "<tr>";
for ($x=0; $x <=10; $x++)
{
print "<td>$step[$x]</td>";
}
print "</tr>";
'readCSV()'ネイティブPHPの関数ではありません。それはその定義を見るのに役立ちます。ただし、明示的に2行しか出力していないため、2行(ヘッダーと1行のデータ)しか取得できません。ループが列を作成していて、行は作成していません。 –
'$ array'を反復してみませんか?あなたはそれのprint_rを投稿できますか? –
'$ x <= 2'は' $ x
Walf