2017-08-25 69 views
0

我需要訪問一個.xlsb文件,做同樣的功能,因爲這代碼訪問.csv文件:
如何通過php訪問.xlsb文件?

<?php 
 
$file1 = __DIR__ . '/download/Trabalhos.csv'; 
 
$csv1 = file($file1); 
 
foreach ($csv1 as $row1 => $line1) { 
 
    $row1++; 
 
    $column1 = str_getcsv($line1, ';'); 
 
    if ($row1 == 2) { 
 
     $column1[6]."<br>"; 
 
     $valor1 = $column1[6]; 
 
    } 
 
} 
 

 
$file2 = __DIR__ . '/download/produtividade do trabalho.csv'; 
 
$csv2 = file($file2); 
 
foreach ($csv2 as $row2 => $line2) { 
 
    $row2++; 
 
    $column2 = str_getcsv($line2, ';'); 
 
    if ($row2 == 3) { 
 
     $column2[9]."<br>"; 
 
     $valor2 = $column2[9]; 
 
    } 
 
} 
 
$file3 = __DIR__ . '/download/inatividade do trabalho.csv'; 
 
$csv3 = file($file3); 
 
foreach ($csv3 as $row3 => $line3) { 
 
    $row3++; 
 
    $column3 = str_getcsv($line3, ';'); 
 
    if ($row3 == 2) { 
 
     $column3[0]."<br>"; 
 
     $valor3 = $column3[0]; 
 
    } 
 
} 
 

 
$total = $valor1 * $valor2 * $valor3; 
 

 
?>

訪問.xlsb文件,通過列滾動行,並在屏幕上顯示行值。

示例:「2號線,列G(在這種情況下,G = 6)
「A = 0
B = 1
C = 2)」
...

我想讓它顯示我行2的值,在列G(6)。

如第一,如果...

if ($row1 == 2) { 
 
     $column1[6]."<br>"; 
 
     $valor1 = $column1[6]; 
 
    }

回答

0

可以使用PHP Excel libraryEasyXLS

$xls = new COM("EasyXLS.ExcelDocument"); 
$rows = $xls->easy_ReadXLSBActiveSheet_AsList("Trabalhos.xlsb"); 
for ($row1=0; $row1<$rows->size(); $row1++) 
{ 
    $rowLine = $rows->elementAt($row1); 
     if ($row1 == 2) { 
      $column1[6]."<br>"; 
      $valor1 = $row->elementAt(6); 
     } 
} 

你可以找到更多關於importing data from xlsb file的示例代碼。

-1

你的目的,你可以使用PHPOffice/PHPExcel

+0

在PHP中處理Excel文件最常用的庫確實是PHPExcel,但它不支持xlsb文件,只有xls和xlsx文件。 –