Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

--TEST-- various fgetcsv() functionality tests --FILE-- <?php $list = array( '..

Decoded Output download

--TEST--
various fgetcsv() functionality tests
--FILE--
<?php
    $list = array(
        'aaa,bbb',
        'aaa,"bbb"',
        '"aaa","bbb"',
        'aaa,bbb',
        '"aaa",bbb',
        '"aaa",   "bbb"',
        ',',
        'aaa,',
        ',"aaa"',
        '"",""',
        '"\"","aaa"',
        '"""""",',
        '""""",aaa' . "
",
        '"\""",aaa' . "
",
        'aaa,"\"bbb,ccc' . "
",
        'aaa,bbb   ',
        'aaa,"bbb   "',
        'aaa"aaa","bbb"bbb',
        'aaa"aaa""",bbb',
        'aaa"\"a","bbb"',
        'aaa,"bbb' . "
",
        'aaa,"bbb',
    );

    $file = __DIR__ . '/fgetcsv.csv';
    @unlink($file);
    foreach ($list as $v) {
        $fp = fopen($file, "w");
        fwrite($fp, $v);
        fclose($fp);

        var_dump(fgetcsv(fopen($file, "r"), 1024));
    }
    @unlink($file);
?>
--EXPECT--
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(0) ""
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(0) ""
}
array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(3) "aaa"
}
array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(0) ""
}
array(2) {
  [0]=>
  string(2) "\""
  [1]=>
  string(3) "aaa"
}
array(2) {
  [0]=>
  string(2) """"
  [1]=>
  string(0) ""
}
array(1) {
  [0]=>
  string(7) """,aaa
"
}
array(1) {
  [0]=>
  string(8) "\"",aaa
"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(10) "\"bbb,ccc
"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(6) "bbb   "
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(6) "bbb   "
}
array(2) {
  [0]=>
  string(8) "aaa"aaa""
  [1]=>
  string(6) "bbbbbb"
}
array(2) {
  [0]=>
  string(10) "aaa"aaa""""
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(8) "aaa"\"a""
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(4) "bbb
"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}

Did this file decode correctly?

Original Code

--TEST--
various fgetcsv() functionality tests
--FILE--
<?php
    $list = array(
        'aaa,bbb',
        'aaa,"bbb"',
        '"aaa","bbb"',
        'aaa,bbb',
        '"aaa",bbb',
        '"aaa",   "bbb"',
        ',',
        'aaa,',
        ',"aaa"',
        '"",""',
        '"\\"","aaa"',
        '"""""",',
        '""""",aaa' . "\n",
        '"\\""",aaa' . "\n",
        'aaa,"\\"bbb,ccc' . "\n",
        'aaa,bbb   ',
        'aaa,"bbb   "',
        'aaa"aaa","bbb"bbb',
        'aaa"aaa""",bbb',
        'aaa"\\"a","bbb"',
        'aaa,"bbb' . "\n",
        'aaa,"bbb',
    );

    $file = __DIR__ . '/fgetcsv.csv';
    @unlink($file);
    foreach ($list as $v) {
        $fp = fopen($file, "w");
        fwrite($fp, $v);
        fclose($fp);

        var_dump(fgetcsv(fopen($file, "r"), 1024));
    }
    @unlink($file);
?>
--EXPECT--
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(0) ""
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(0) ""
}
array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(3) "aaa"
}
array(2) {
  [0]=>
  string(0) ""
  [1]=>
  string(0) ""
}
array(2) {
  [0]=>
  string(2) "\""
  [1]=>
  string(3) "aaa"
}
array(2) {
  [0]=>
  string(2) """"
  [1]=>
  string(0) ""
}
array(1) {
  [0]=>
  string(7) """,aaa
"
}
array(1) {
  [0]=>
  string(8) "\"",aaa
"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(10) "\"bbb,ccc
"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(6) "bbb   "
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(6) "bbb   "
}
array(2) {
  [0]=>
  string(8) "aaa"aaa""
  [1]=>
  string(6) "bbbbbb"
}
array(2) {
  [0]=>
  string(10) "aaa"aaa""""
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(8) "aaa"\"a""
  [1]=>
  string(3) "bbb"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(4) "bbb
"
}
array(2) {
  [0]=>
  string(3) "aaa"
  [1]=>
  string(3) "bbb"
}

Function Calls

None

Variables

$list [{'key': 0, 'value': 'aaa,bbb'}, {'key': 1, 'value': 'aaa,"bbb"'}, {'key': 2, 'value': '"aaa","bbb"'}, {'key': 3, 'value': 'aaa,bbb'}, {'key': 4, 'value': '"aaa",bbb'}, {'key': 5, 'value': '"aaa", "bbb"'}, {'key': 6, 'value': ','}, {'key': 7, 'value': 'aaa,'}, {'key': 8, 'value': ',"aaa"'}, {'key': 9, 'value': '"",""'}, {'key': 10, 'value': '"\\"","aaa"'}, {'key': 11, 'value': '"""""",'}, {'key': 12, 'value': '""""",aaa\n'}, {'key': 13, 'value': '"\\""",aaa\n'}, {'key': 14, 'value': 'aaa,"\\"bbb,ccc\n'}, {'key': 15, 'value': 'aaa,bbb '}, {'key': 16, 'value': 'aaa,"bbb "'}, {'key': 17, 'value': 'aaa"aaa","bbb"bbb'}, {'key': 18, 'value': 'aaa"aaa""",bbb'}, {'key': 19, 'value': 'aaa"\\"a","bbb"'}, {'key': 20, 'value': 'aaa,"bbb\n'}, {'key': 21, 'value': 'aaa,"bbb'}]

Stats

MD5 6cfa98ff61e8157a39f387d712b6e3a2
Eval Count 0
Decode Time 90 ms