mirror of
https://github.com/php/php-src.git
synced 2026-03-24 16:22:37 +01:00
Normalize the behavior between the file functions and those on SplFileObject. Be consistent about throwing regardless of whether the delimiter etc is empty or has too many characters. I don't think it's worthwhile to distinguish these cases. Back when we looked into this originally, there was some hope that we might want to add support for multiple-character delimiter etc, but after a cursory look, I really don't think this is going to happen (for fputcsv maybe, but for fgetcsv this just makes an already broken function much more complicated.) Closes GH-6188.
32 lines
893 B
PHP
32 lines
893 B
PHP
--TEST--
|
|
Test fputcsv() : usage variations - with enclosure & delimiter of two chars
|
|
--FILE--
|
|
<?php
|
|
|
|
/* Testing fputcsv() to write to a file when default enclosure value and delimiter
|
|
of two chars is provided and file is opened in read only mode */
|
|
|
|
echo "*** Testing fputcsv() : with enclosure & delimiter of two chars and file opened in read mode ***\n";
|
|
|
|
$fo = new SplFileObject(__DIR__ . '/SplFileObject_fputcsv_variation14.csv', 'w');
|
|
|
|
try {
|
|
var_dump($fo->fputcsv(array('water', 'fruit'), ',,', '""'));
|
|
} catch (ValueError $e) {
|
|
echo $e->getMessage(), "\n";
|
|
}
|
|
|
|
unset($fo);
|
|
|
|
echo "Done\n";
|
|
?>
|
|
--CLEAN--
|
|
<?php
|
|
$file = __DIR__ . '/SplFileObject_fputcsv_variation14.csv';
|
|
unlink($file);
|
|
?>
|
|
--EXPECT--
|
|
*** Testing fputcsv() : with enclosure & delimiter of two chars and file opened in read mode ***
|
|
SplFileObject::fputcsv(): Argument #3 ($enclosure) must be a single character
|
|
Done
|