を動作していないが、私は同じそれは(BからKまで)10列、10行を持って.XLSで保存したファイルとの.xlsx を得意としていPHPExcelgetHighestColumnはXLSXで
public function getHighestColumn()
{
return $this->objPHPExcel->setActiveSheetIndex(0)->getHighestColumn();
}
public function getHighestRow()
{
return $this->objPHPExcel->setActiveSheetIndex(0)->getHighestRow();
}
を使用して、このコードを持っている
.xlsで「K」(正しい)が表示されますが、.xlsxではAMK(すべてのExcelワークシートの最後の列)が表示されます .xlsを使用して、私は10を得ていますが、xlsxでは1024を取得しています。 テーブルを除いて、残りのワークシートは空白です。
なぜ私は別の結果を得ていますか?ここで
は、私がvar_dump
でチェックしましたし、それぞれの場合に、私は右のリーダーを使用してい
public function openReader($filePath)
{
//aca determinamos cual tipo es para saber que reader es
$reader_5 = new PHPExcel_Reader_Excel5();
$reader_07 = new PHPExcel_Reader_Excel2007();
$inputFileType = $this->canRead(new PHPExcel_Reader_Excel5(), $filePath, self::EXCEL5);
if($inputFileType === '')
$inputFileType = $this->canRead(new PHPExcel_Reader_Excel2007(), $filePath, self::EXCEL2007);
else
{
throw new Exception("No se puede procesar el archivo; el formato no es correcto");
}
return PHPExcel_IOFactory::createReader($inputFileType);
}
private function canRead($reader, $path, $readerType)
{
return $reader->canRead($path) ? $readerType: '';
}
public function persist($fileName)
{
$filePath = sfConfig::get('sf_upload_dir').'\\'.$fileName;
$this->objReader = $this->openReader($filePath);
//Set only first Sheet
$this->setOnlyFirstSheet();
$this->createObjPHPExcel($filePath);
echo $this->getHighestColumn();
echo $this->getHighestRow();
}
を使用している読者がいます。
PHP 5.3.5、彼らはむしろ、単にコンテンツを持つよりも、(スタイル情報を含む)は何が含まれている場合、PHPExcel 1.7.8は、symfonyの1.4
あなたは列のデータを持っている場合は、XLSファイルで最高の列に「B」を取得してはなりません'K' ....しかし、MS Excelでxlsxファイルを開き、最後のセルが –
だと思っているかどうかを見るにはCtrl-Endを押します。また、行と列はgetHighestColumn()とgetHighestRow()によってカウントされるので、単にコンテンツを持つのではなく、スタイル情報も含めて、getHighestDataColumn()メソッドとgetHighestDataRow()メソッドを見てください。 –
私は、「K」を得ることが誤植であることを意味しています。その方法を確認する –