fpassthru_basic.phpt 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. --TEST--
  2. Test fpassthru() function: Basic functionality
  3. --FILE--
  4. <?php
  5. /*
  6. Prototype: int fpassthru ( resource $handle );
  7. Description: Reads to EOF on the given file pointer from the current position
  8. and writes the results to the output buffer.
  9. */
  10. $file_name = dirname(__FILE__)."/passthru.tmp";
  11. $write_handle = fopen($file_name, "w");
  12. $string = "Hello, world\n, abcdefg\tadsdsfdf\n8u2394723947\t$%$%#$%#$%#^#%^
  13. Hello, world\n, abcdefg\tadsdsfdf\n8u2394723947\t$%$%#$%#$%#^#%^\n";
  14. if(substr(PHP_OS, 0, 3) == "WIN") {
  15. $string = str_replace("\r",'', $string);
  16. }
  17. fwrite($write_handle, $string);
  18. fclose($write_handle);
  19. $read_handle = fopen($file_name, "r");
  20. echo "*** Test basic functionality of fpassthru() function ***\n";
  21. echo "\n-- Before seek operation --\n";
  22. var_dump( fpassthru($read_handle) );
  23. echo "\n-- After seeking position to 0 --\n";
  24. fseek($read_handle, 0);
  25. var_dump( fpassthru($read_handle) );
  26. echo "\n-- After seeking position to 3 --\n";
  27. fseek($read_handle, 3);
  28. var_dump( fpassthru($read_handle) );
  29. echo "\n-- After seeking position to 13 --\n";
  30. fseek($read_handle, 13);
  31. var_dump( fpassthru($read_handle) );
  32. echo "\n-- After seeking position to 14 --\n";
  33. fseek($read_handle, 14);
  34. var_dump( fpassthru($read_handle) );
  35. echo "\n-- After seeking position to 23 --\n";
  36. fseek($read_handle, 23);
  37. var_dump( fpassthru($read_handle) );
  38. echo "\n-- After seeking position to 34 --\n";
  39. fseek($read_handle, 34);
  40. var_dump( fpassthru($read_handle) );
  41. echo "\n-- After seeking position to 1000 --\n";
  42. fseek($read_handle, 1000);
  43. var_dump( fpassthru($read_handle) );
  44. fclose($read_handle);
  45. echo "*** Done ***\n";
  46. ?>
  47. --CLEAN--
  48. <?php
  49. unlink(dirname(__FILE__)."/passthru.tmp");
  50. ?>
  51. --EXPECTF--
  52. *** Test basic functionality of fpassthru() function ***
  53. -- Before seek operation --
  54. Hello, world
  55. , abcdefg adsdsfdf
  56. 8u2394723947 $%$%#$%#$%#^#%^
  57. Hello, world
  58. , abcdefg adsdsfdf
  59. 8u2394723947 $%$%#$%#$%#^#%^
  60. int(133)
  61. -- After seeking position to 0 --
  62. Hello, world
  63. , abcdefg adsdsfdf
  64. 8u2394723947 $%$%#$%#$%#^#%^
  65. Hello, world
  66. , abcdefg adsdsfdf
  67. 8u2394723947 $%$%#$%#$%#^#%^
  68. int(133)
  69. -- After seeking position to 3 --
  70. lo, world
  71. , abcdefg adsdsfdf
  72. 8u2394723947 $%$%#$%#$%#^#%^
  73. Hello, world
  74. , abcdefg adsdsfdf
  75. 8u2394723947 $%$%#$%#$%#^#%^
  76. int(130)
  77. -- After seeking position to 13 --
  78. , abcdefg adsdsfdf
  79. 8u2394723947 $%$%#$%#$%#^#%^
  80. Hello, world
  81. , abcdefg adsdsfdf
  82. 8u2394723947 $%$%#$%#$%#^#%^
  83. int(120)
  84. -- After seeking position to 14 --
  85. abcdefg adsdsfdf
  86. 8u2394723947 $%$%#$%#$%#^#%^
  87. Hello, world
  88. , abcdefg adsdsfdf
  89. 8u2394723947 $%$%#$%#$%#^#%^
  90. int(119)
  91. -- After seeking position to 23 --
  92. adsdsfdf
  93. 8u2394723947 $%$%#$%#$%#^#%^
  94. Hello, world
  95. , abcdefg adsdsfdf
  96. 8u2394723947 $%$%#$%#$%#^#%^
  97. int(110)
  98. -- After seeking position to 34 --
  99. 2394723947 $%$%#$%#$%#^#%^
  100. Hello, world
  101. , abcdefg adsdsfdf
  102. 8u2394723947 $%$%#$%#$%#^#%^
  103. int(99)
  104. -- After seeking position to 1000 --
  105. int(0)
  106. *** Done ***