我知道如何将带逗号的字符串处理成csv,将带双引号的字符串处理成csv,
但是如果一个带有逗号和双引号的字符串,如何转换它?
喜欢:
“改变缅甸:制度、个性和期望”研讨会,2012 年 2 月 10 日;
默认情况下,我在字符串中添加了“”,因此它可以用逗号转换为 csv 文件,
但如果这个字符串也包含“”,那么该字段在 csv 中分为两个字段。
我试过这个:
““改变缅甸:制度、个性和期望”研讨会“2012 年 2 月 10 日”
但这是错误的……
我认为使用fputcsv()是避免任何问题的最佳方法。
这有效:
<?php
@unlink( 'test.csv' );
$fp = fopen( 'test.csv', 'w' );
$text = '"Changing Myanmar: Institutions, Personalities and Expectations"';
fwrite( $fp, '"'. str_replace( '"', '""', $text ) . '", "test"' . "\n" );
fclose( $fp );
?>
从此 csv 文件中读取:
$fp = fopen( 'test.csv', 'r' );
while( ( $data = fgetcsv( $fp, '', ',' ) ) !== false ) {
echo $data[0];
}
fclose( $fp );
输出 - "Changing Myanmar: Institutions, Personalities and Expectations"
希望这可以帮助。