diff options
Diffstat (limited to 'ext/standard/tests/file/007_basic.phpt')
-rw-r--r-- | ext/standard/tests/file/007_basic.phpt | 412 |
1 files changed, 412 insertions, 0 deletions
diff --git a/ext/standard/tests/file/007_basic.phpt b/ext/standard/tests/file/007_basic.phpt new file mode 100644 index 0000000..eafadf7 --- /dev/null +++ b/ext/standard/tests/file/007_basic.phpt @@ -0,0 +1,412 @@ +--TEST-- +Test fopen(), fclose() & feof() functions: basic functionality +--FILE-- +<?php +/* + Prototype: resource fopen(string $filename, string $mode + [, bool $use_include_path [, resource $context]] ); + Description: Opens file or URL. + + Prototype: bool fclose ( resource $handle ); + Description: Closes an open file pointer + + Prototype: bool feof ( resource $handle ); + Description: Tests for end-of-file on a file pointer +*/ + +echo "*** Testing basic operations of fopen() and fclose() functions ***\n"; +$modes = array( + "w", + "wb", + "wt", + "w+", + "w+b", + "w+t", + + "r", + "rb", + "rt", + "r+", + "r+b", + "r+t", + + "a", + "ab", + "at", + "a+", + "a+t", + "a+b" +); + +for( $i=0; $i<count($modes); $i++ ) { + echo "\n-- Iteration with mode '$modes[$i]' --\n"; + + $filename = dirname(__FILE__)."/007_basic.tmp"; + // check fopen() + $handle = fopen($filename, $modes[$i]); + var_dump($handle ); + var_dump( ftell($handle) ); + var_dump( feof($handle) ); + + // check fclose() + var_dump( fclose($handle) ); + var_dump( $handle ); + // confirm the closure, using ftell() and feof(), expect, false + var_dump( ftell($handle) ); + var_dump( feof($handle) ); +} + +// remove the temp file +unlink($filename); + +$x_modes = array( + "x", + "xb", + "xt", + "x+", + "x+b", + "x+t" +); + +for( $i=0; $i<count($x_modes); $i++ ) { + echo "\n-- Iteration with mode '$x_modes[$i]' --\n"; + $handle = fopen($filename, $x_modes[$i]); + var_dump($handle ); + var_dump( ftell($handle) ); + var_dump( feof($handle) ); + + // check fclose() + var_dump( fclose($handle) ); + var_dump( $handle ); + // confirm the closure, using ftell() and feof(), expect, false + var_dump( ftell($handle) ); + var_dump( feof($handle) ); + var_dump( $handle ); + + // remove the file + unlink( $filename ); +} + +echo "\n*** Done ***\n"; +--EXPECTF-- +*** Testing basic operations of fopen() and fclose() functions *** + +-- Iteration with mode 'w' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'wb' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'wt' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'w+' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'w+b' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'w+t' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'r' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'rb' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'rt' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'r+' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'r+b' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'r+t' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'a' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'ab' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'at' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'a+' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'a+t' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'a+b' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) + +-- Iteration with mode 'x' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) +resource(%d) of type (Unknown) + +-- Iteration with mode 'xb' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) +resource(%d) of type (Unknown) + +-- Iteration with mode 'xt' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) +resource(%d) of type (Unknown) + +-- Iteration with mode 'x+' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) +resource(%d) of type (Unknown) + +-- Iteration with mode 'x+b' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) +resource(%d) of type (Unknown) + +-- Iteration with mode 'x+t' -- +resource(%d) of type (stream) +int(0) +bool(false) +bool(true) +resource(%d) of type (Unknown) + +Warning: ftell(): %d is not a valid stream resource in %s on line %d +bool(false) + +Warning: feof(): %d is not a valid stream resource in %s on line %d +bool(false) +resource(%d) of type (Unknown) + +*** Done *** |