我正在用PHP讀取一個CSV文件,我得到了每一行的所有值,但是一些有長數據的列顯示類似這樣的東西9.21008E+15
我不知道如何獲得完整的值這是假設是這個9210080000000000
在PHP中獲取一個CSV單元格的完整值
if (($handle = fopen("Test.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 0, ",")) !== FALSE) {
$num = count($data);
$tb_row = "";
for ($c=0; $c < $num; $c++) {
$tb_row .= $data[$c].",";
}
$new_row = substr($tb_row, 0, -1);//removing the comma at the end of line...
//explode and assign values then insert
$each_col = explode(',', $new_row);
$Device_state = $each_col[0];
$udid = $each_col[8];
$imsi = $each_col[9];
$imei = $each_col[10];
echo "$imsi || $imei"."<br />";
}
}
不要在Excel中打開? – CD001
PHP沒有做任何事情。已經以CSV格式存儲爲E + 15的值可能會將其打開爲excel,並且Excel會自動替換爲E + 15嘗試將該列轉換爲Excel中的文本。 –
無論如何,劇本會發生什麼樣的廢話? fgetcsv以數組的形式獲取一行的列。從那裏,你創建一個字符串,在這裏你用逗號分隔每個值 - 然後再用逗號分解它......不僅看起來相當多餘,而且它可能會產生可能包含列值的錯誤列分隔符字符。 – CBroe