Annotation of embedaddon/php/ext/standard/tests/file/file_variation.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test file() function : usage variations
        !             3: --FILE--
        !             4: <?php
        !             5: /* 
        !             6:  *  Prototype: array file ( string filename [,int use-include_path [,resource context]] );
        !             7:  *  Description: Reads entire file into an array
        !             8:                  Returns the  file in an array
        !             9:  */
        !            10: require(dirname(__FILE__) . '/file.inc');
        !            11: 
        !            12: $data_array = array( "Garbage data", "Gar\nba\nge d\nata", "Gar\n\nbage \n\n data" );
        !            13: echo "*** Using various flags values with different data in a file\n";
        !            14: $count=1;
        !            15: $file_path = dirname(__FILE__);
        !            16: foreach( $data_array as $data ) {
        !            17:    echo "--Iteration $count --\n";
        !            18:    $fh  = fopen($file_path."/file_variation.tmp", "w");
        !            19:    fwrite($fh, (binary)$data);
        !            20:    var_dump( file($file_path."/file_variation.tmp", FILE_IGNORE_NEW_LINES) ); 
        !            21:    var_dump( file($file_path."/file_variation.tmp", FILE_SKIP_EMPTY_LINES) ); 
        !            22:    $count++;
        !            23:    fclose($fh);
        !            24: }
        !            25: 
        !            26: echo "*** Testing with variation in use_include_path argument ***\n";
        !            27: $file_path1 = dirname(__FILE__)."/file_variation";
        !            28: mkdir($file_path1);
        !            29: ini_set( 'include_path',$file_path.'/file_variation' );
        !            30: 
        !            31: file_put_contents( $file_path1."/file1_variation.tmp", "aaaaaaaaaaaaaaabbbbbbbbbbb111111111222222222" );
        !            32: var_dump( file("file1_variation.tmp", FILE_USE_INCLUDE_PATH) );
        !            33: var_dump( file($file_path1."/file1_variation.tmp", 1) );
        !            34: 
        !            35: echo "*** Using file function to remove line containing a key string ***\n";
        !            36: $file_handle = fopen($file_path."/file2_variation.tmp", "w");
        !            37: $key = "SEARCH_KEY";
        !            38: fwrite( $file_handle, (binary)"The key string to be searched is SEARCH_KEY\nLine without key string\nThe key string to be searched is SEARCH_KEY" );
        !            39: $out_array = file($file_path."/file2_variation.tmp");
        !            40: 
        !            41: echo "File contents in array form Before replacement of the key\n";
        !            42: var_dump( $out_array );
        !            43: $file_handle2 = fopen($file_path."/file3_variation.tmp", "w");
        !            44: // Loop through file content array
        !            45: foreach($out_array as $line) {
        !            46:   if( !strstr( $line, $key ) )
        !            47:     fputs($file_handle2,$line);
        !            48: }
        !            49: echo "File contents in array form After replacement of the key\n";
        !            50: var_dump( file($file_path."/file3_variation.tmp" ));
        !            51: fclose($file_handle);
        !            52: fclose($file_handle2);
        !            53: 
        !            54: echo "\n--- Done ---";
        !            55: ?>
        !            56: 
        !            57: --CLEAN--
        !            58: <?php
        !            59: $file_path = dirname(__FILE__);
        !            60: unlink($file_path."/file_variation.tmp");
        !            61: unlink($file_path."/file_variation/file1_variation.tmp");
        !            62: unlink($file_path."/file2_variation.tmp");
        !            63: unlink($file_path."/file3_variation.tmp");
        !            64: rmdir($file_path."/file_variation");
        !            65: 
        !            66: ?>
        !            67: --EXPECTF--
        !            68: *** Using various flags values with different data in a file
        !            69: --Iteration 1 --
        !            70: array(1) {
        !            71:   [0]=>
        !            72:   string(12) "Garbage data"
        !            73: }
        !            74: array(1) {
        !            75:   [0]=>
        !            76:   string(12) "Garbage data"
        !            77: }
        !            78: --Iteration 2 --
        !            79: array(4) {
        !            80:   [0]=>
        !            81:   string(3) "Gar"
        !            82:   [1]=>
        !            83:   string(2) "ba"
        !            84:   [2]=>
        !            85:   string(4) "ge d"
        !            86:   [3]=>
        !            87:   string(3) "ata"
        !            88: }
        !            89: array(4) {
        !            90:   [0]=>
        !            91:   string(4) "Gar
        !            92: "
        !            93:   [1]=>
        !            94:   string(3) "ba
        !            95: "
        !            96:   [2]=>
        !            97:   string(5) "ge d
        !            98: "
        !            99:   [3]=>
        !           100:   string(3) "ata"
        !           101: }
        !           102: --Iteration 3 --
        !           103: array(5) {
        !           104:   [0]=>
        !           105:   string(3) "Gar"
        !           106:   [1]=>
        !           107:   string(0) ""
        !           108:   [2]=>
        !           109:   string(5) "bage "
        !           110:   [3]=>
        !           111:   string(0) ""
        !           112:   [4]=>
        !           113:   string(5) " data"
        !           114: }
        !           115: array(5) {
        !           116:   [0]=>
        !           117:   string(4) "Gar
        !           118: "
        !           119:   [1]=>
        !           120:   string(1) "
        !           121: "
        !           122:   [2]=>
        !           123:   string(6) "bage 
        !           124: "
        !           125:   [3]=>
        !           126:   string(1) "
        !           127: "
        !           128:   [4]=>
        !           129:   string(5) " data"
        !           130: }
        !           131: *** Testing with variation in use_include_path argument ***
        !           132: array(1) {
        !           133:   [0]=>
        !           134:   string(44) "aaaaaaaaaaaaaaabbbbbbbbbbb111111111222222222"
        !           135: }
        !           136: array(1) {
        !           137:   [0]=>
        !           138:   string(44) "aaaaaaaaaaaaaaabbbbbbbbbbb111111111222222222"
        !           139: }
        !           140: *** Using file function to remove line containing a key string ***
        !           141: File contents in array form Before replacement of the key
        !           142: array(3) {
        !           143:   [0]=>
        !           144:   string(44) "The key string to be searched is SEARCH_KEY
        !           145: "
        !           146:   [1]=>
        !           147:   string(24) "Line without key string
        !           148: "
        !           149:   [2]=>
        !           150:   string(43) "The key string to be searched is SEARCH_KEY"
        !           151: }
        !           152: File contents in array form After replacement of the key
        !           153: array(1) {
        !           154:   [0]=>
        !           155:   string(24) "Line without key string
        !           156: "
        !           157: }
        !           158: 
        !           159: --- Done ---
        !           160: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>