0
我想閱讀與Phpexcel的Excel文件,並插入數據到數據庫中,我可以閱讀一切,它的工作正常,但我不能閱讀電話號碼與領先零Phpexcel 當我看到我的數據庫所有保存的電話號碼沒有前導零像這樣:0212365498保存爲212365498閱讀電話號碼與領先零phpexcel
我想閱讀與Phpexcel的Excel文件,並插入數據到數據庫中,我可以閱讀一切,它的工作正常,但我不能閱讀電話號碼與領先零Phpexcel 當我看到我的數據庫所有保存的電話號碼沒有前導零像這樣:0212365498保存爲212365498閱讀電話號碼與領先零phpexcel
如果您從CSV文件導入,您可以使用值活頁夾來保留任何前導零。這是我如何實施我的修復程序。
創建了一個名爲 'BindValueAsString'
class BindValueAsString extends PHPExcel_Cell_DefaultValueBinder implements PHPExcel_Cell_IValueBinder
{
public function bindValue(PHPExcel_Cell $cell, $value = null)
{
$cell->setValueExplicit($value, PHPExcel_Cell_DataType::TYPE_STRING);
return true;
}
}
設定值粘結劑加載CSV文件
$objReader = PHPExcel_IOFactory::createReader('CSV');
PHPExcel_Cell::setValueBinder(new BindValueAsString());
$objPHPExcel = $objReader->load('file.csv');
$worksheet = $objPHPExcel->getActiveSheet();
$dataAsString = $worksheet->toArray();
而這之前類。或者您可以升級到版本1.8.1,其中前導零是固定的here
您是否嘗試將它們讀爲字符串而不是整數? – Peon 2013-03-06 07:51:14
我認爲你不能在數據庫中存儲以零開頭的數字(假設你的數據庫字段是INT)。嘗試將字段的類型從INT更改爲VARCHAR。這可能有所幫助:http://stackoverflow.com/questions/2786193/allow-number-to-start-with-zero-when-stored-in-mysql-integer-field – Makesh 2013-03-06 07:55:36
我試圖讀取字符串,但它不是工作 – 2013-03-06 08:07:40