1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
--TEST--
fputcsv() variant where escape parameter matters
--FILE--
<?php
$list = [
1 => 'aaa,"/"bbb,ccc',
2 => 'aaa"/"a","bbb"',
3 => '"/"","aaa"',
4 => '"/""",aaa',
];
$file = __DIR__ . '/fputcsv_variation18.csv';
$fp = fopen($file, "w");
foreach ($list as $v) {
fputcsv($fp, explode(',', $v), ',', '"', '/');
}
fclose($fp);
$res = file($file);
foreach($res as &$val)
{
$val = substr($val, 0, -1);
}
echo '$list = ';var_export($res);echo ";\n";
$fp = fopen($file, "r");
$res = array();
while($l=fgetcsv($fp, 0, ',', '"', '/'))
{
$res[] = join(',',$l);
}
fclose($fp);
echo '$list = ';var_export($res);echo ";\n";
?>
--CLEAN--
<?php
$file = __DIR__ . '/fputcsv_variation18.csv';
@unlink($file);
?>
--EXPECTF--
$list = array (
0 => 'aaa,"""/"bbb",ccc',
1 => '"aaa""/"a""","""bbb"""',
2 => '"""/"""","""aaa"""',
3 => '"""/"""""",aaa',
);
$list = array (
0 => 'aaa,"/"bbb,ccc',
1 => 'aaa"/"a","bbb"',
2 => '"/"","aaa"',
3 => '"/""",aaa',
);
|