<?php
$delim = ',';
$enclosure = '"';
$escape = '~';
$data = ['', '"', 'foo"', '\\"', '\\~', 'foo\\~'];
$input = fopen('php://temp,', 'w+');
fputcsv($input, $data, $delim, $enclosure, $escape);
rewind($input);
$csv = stream_get_contents($input);
var_dump($csv);
$output = fopen('php://temp', 'r+');
fwrite($output, $csv);
rewind($output);
var_dump($parsed = fgetcsv($output, 0, $delim, $enclosure, $escape), $data === $parsed);
preferences:
29.46 ms | 402 KiB | 5 Q