在PHP語言中,想要將表格轉換為陣列十分常見。通常情況下,我們需要處理大量的數據,並在程式碼中讀取和操作,這時候將表格轉換成數組將大大方便我們進行數據處理和操作。
本文旨在介紹在PHP中如何將表格轉換為數組,幫助PHP愛好者輕鬆處理大量的資料。
I. CSV表格轉換為陣列
首先,CSV(Comma-Separated Values)是一種非常常見的表格形式,它可以用各種工俱生成,並且容易處理。 CSV表格只需要用逗號隔開每一列,並使用回車符號分割每一行,以便於讀取和操作。
以下是將CSV表格轉換成陣列的方法:
以下範例中,我們將用fgets ()函數讀取CSV檔案的內容,並將其逐行儲存到陣列$lines中。
$csvFile = 'test.csv';
#$lines = [];
if (($handle = fopen($csvFile, "r ")) !== FALSE) {
while (($data = fgets($handle)) !== FALSE) { $lines[] = $data; } fclose($handle);
}
?>
#接下來,我們將使用循環遍歷$lines數組,並用explode()函數將每一行資料按照逗號切分成一個新數組,最終得到一個二維數組$csvData。你可以使用count()函數來取得$csvData數組中的行數和列數。
$csvFile = 'test.csv';
$lines = [];
if (($handle = fopen($csvFile, "r")) !== FALSE) {
while (($data = fgets($handle)) !== FALSE) { $lines[] = $data; } fclose($handle); $csvData = []; foreach ($lines as $line) { $csvData[] = str_getcsv($line); }
}
?>
現在,你可以使用var_dump ()函數在瀏覽器中看到$csvData數組中的資料。
$csvFile = 'test.csv';
$lines = [];
if (($handle = fopen($csvFile, "r")) !== FALSE) {
while (($data = fgets($handle)) !== FALSE) { $lines[] = $data; } fclose($handle); $csvData = []; foreach ($lines as $line) { $csvData[] = str_getcsv($line); } var_dump($csvData);
}
?>
#II. Excel表格轉成陣列
當我們不是使用CSV格式時,可以更簡單地將Excel表格轉換為陣列類型。如下:
我們可以從PHPEXCEL的官網上下載這個插件,並將它解壓縮到專案目錄。
require_once 'Classes/PHPExcel.php';
?>
foreach ($sheet->getRowIterator() as $row) {
$item = []; $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); foreach ($cellIterator as $cell) { $item[] = $cell->getValue(); } $rows[] = $item;
?>
foreach ($sheet->getRowIterator() as $row) {
$item = []; $cellIterator = $row->getCellIterator(); $cellIterator->setIterateOnlyExistingCells(false); foreach ($cellIterator as $cell) { $item[] = $cell->getValue(); } $rows[] = $item;
?>
以上是php怎麼把表格轉換成數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!