在PHP中,有没有办法强制将值“00123”作为字符串插入CSV文件?
这样,当您打开CSV文件时,该值将保持00123
,而不是删除前导零并显示123
。
我想要实现这一目标的主要原因是一个zipcodes列表,而有多个zipcodes有前导零,我希望这些值反映出来。
<?php
if( $fh = fopen('filename.csv','w') ){
$line = ['00123'];
fputcsv($fh,$line);
fclose($fh);
}
答案 0 :(得分:1)
CSV没有类型。使用,"..",
语法编写的值仅限定值以消除值本身内,
的使用歧义;这并不意味着该值是“字符串”。
我怀疑在导入Excel等时你的值会被破坏。 CSV无法提供解决方案;您只能使用导入向导导入文件,并指定该列应按原样使用,而不是强制转换为数字。 (这可能会或可能不会真正起作用,具体取决于您正在使用的Excel版本。)
如果您不希望每次都这样做,那么您应该生成一个XLSX文件, 具有类型。
答案 1 :(得分:0)
我想没有办法做到这一点因为“CSV”文件只是“逗号分隔值”
您必须使用csv import的编辑器选项。