3v4l.org

run code in 150+ php & hhvm versions
Bugs & Features
<?php class AttackStream { function stream_open($path, $mode, $options, &$opened_path) { return true; } function stream_read($count) { echo $count,"\n"; return "AA"; } function stream_eof() { return true; } function stream_set_option() { return true; } function stream_seek($offset, $whence) { return false; } } stream_wrapper_register("attack", "AttackStream") or die("Failed to register protocol"); $f = fopen("attack://nothing", "r"); stream_set_chunk_size($f, 1); fread($f, 1); ?>
Output for 5.4.0 - 5.6.28, 7.0.0 - 7.1.0
1 Warning: fread(): AttackStream::stream_read - read 1 bytes more data than requested (2 read, 1 max) - excess data will be lost in /in/qOYsX on line 36
Output for 5.0.5 - 5.3.29, hhvm-3.10.0 - 3.12.0
Fatal error: Call to undefined function stream_set_chunk_size() in /in/qOYsX on line 35
Process exited with code 255.
Output for 5.0.0 - 5.0.4
Fatal error: Call to undefined function stream_set_chunk_size() in /in/qOYsX on line 35
Process exited with code 139.
Output for 4.4.5 - 4.4.9
Fatal error: Call to undefined function: stream_set_chunk_size() in /in/qOYsX on line 35
Process exited with code 255.
Output for 4.3.2 - 4.3.8, 4.4.0 - 4.4.4
Fatal error: Call to undefined function: stream_set_chunk_size() in /in/qOYsX on line 35
Process exited with code 255.
Output for 4.3.9 - 4.3.11
Fatal error: Call to undefined function: stream_set_chunk_size() in /in/qOYsX on line 35
Process exited with code 139.
Output for 4.3.0 - 4.3.1
Fatal error: Call to undefined function: stream_wrapper_register() in /in/qOYsX on line 32