3v4l.org

run code in 300+ PHP versions simultaneously
<?php /* * The value of the $escape parameter doesn't matter * unless it's set to the one character that makes sense * then it f's up the escaping and produces invalid CSV data * */ $fh = fopen('php://stdout', 'w'); fputcsv($fh, ['using default', 'a,"b'], ',', '"'); fputcsv($fh, ['using " ', 'a,"b'], ',', '"', '"'); fputcsv($fh, ['using x ', 'a,"b'], ',', '"', 'x'); fputcsv($fh, ['using \\ ', 'a,"b'], ',', '"', '\\');
Output for 8.4.1 - 8.4.18, 8.5.0 - 8.5.3
Deprecated: fputcsv(): the $escape parameter must be provided as its default value will change in /in/LKkfW on line 10 "using default","a,""b" "using " ","a,"b" "using x ","a,""b" "using \ ","a,""b"
Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.34, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30
"using default","a,""b" "using " ","a,"b" "using x ","a,""b" "using \ ","a,""b"

preferences:
93.34 ms | 2008 KiB | 4 Q