在 PHPExcel 中将数组键更改为数字

Change array keys to numeric in PHPExcel

大家好,我正在使用 PHPExcel 读取 xls 文件。我正在使用此行从数组

中的 xls 获取数据
$sheetData = $objPHPExcel->getActiveSheet()->toArray(null,true,true,true);

它工作正常但给我数组是这样的

    Array
(
    [1] => Array
        (
            [A] => category_id (*)
            [B] => category_name (*)
            [C] => name_en (*)
        )
)

如您所见,它把键设置为字母而不是数字

        [A] => category_id (*)
        [B] => category_name (*)
        [C] => name_en (*)

但我希望我的数组像这样有数字键而不是像

这样的字母表
    Array
(
    [1] => Array
        (
            [0] => category_id (*)
            [1] => category_name (*)
            [2] => name_en (*)
        )
)

有一种方法可以将此数组转换为数字键

$type = array_values(array_map('array_values', $sheetData));

但是我如何使用 PHPExcel 获取像这个数组这样的数据我搜索了很多但没有找到任何解决方案。

将最后一个参数更改为 false 以获得数字索引

->toArray(null,true,true,false);

另一种方法:

$input_file_type = PHPExcel_IOFactory::identify($path_to_file);
$obj_reader = PHPExcel_IOFactory::createReader($input_file_type);
$obj_php_excel = $obj_reader->load($path_to_file);

//  Get worksheet dimensions
$sheet = $obj_php_excel->getSheet(0); 
$highest_row = $sheet->getHighestRow(); 
$highest_column = $sheet->getHighestColumn();

//  Loop through each row of the worksheet in turn
for ($row = 1; $row <= $highest_row; $row++){
    //  Read a row of data into an array
    $row_data = $sheet->rangeToArray('A' . $row . ':' . $highest_column . $row, NULL, TRUE, FALSE);
    $excel_data[] = $row_data[0];
}