Menu Home

stream_notification_callback

osbo.com | PHP | Functions | stream_notification_callback

A callback function for the notification context parameter

Syntax

stream_notification_callback ( int $notification_code , int $severity , string $message , int $message_code , int $bytes_transferred , int $bytes_max ) : void

Parameters

notification_code

One of the STREAM_NOTIFY_* notification constants.

severity

One of the STREAM_NOTIFY_SEVERITY_* notification constants.

message

Passed if a descriptive message is available for the event.

message_code

Passed if a descriptive message code is available for the event.

The meaning of this value is dependent on the specific wrapper in use.

bytes_transferred

If applicable, the bytes_transferred will be populated.

bytes_max

If applicable, the bytes_max will be populated.

Return

No value is returned.

Examples

<?

function stream_notification_callback($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max)
{
    switch($notification_code)
    {
        case STREAM_NOTIFY_RESOLVE:
        case STREAM_NOTIFY_AUTH_REQUIRED:
        case STREAM_NOTIFY_COMPLETED:
        case STREAM_NOTIFY_FAILURE:
        case STREAM_NOTIFY_AUTH_RESULT:
            var_dump($notification_code, $severity, $message, $message_code, $bytes_transferred, $bytes_max);
            break;
        case STREAM_NOTIFY_CONNECT:
            echo "connect";
            break;
        case STREAM_NOTIFY_MIME_TYPE_IS:
            echo "mime type: " . $message;
            break;
        case STREAM_NOTIFY_FILE_SIZE_IS:
            echo "file size: " . $bytes_max;
            break;
        case STREAM_NOTIFY_REDIRECTED:
            echo "redirected: " . $message . "\n";
            break;
        case STREAM_NOTIFY_PROGRESS:
            echo "progress: " . $bytes_transferred;
            break;
    }
    echo "\n";
}

$stream_or_context = stream_context_create();
$params = array("notification" => "stream_notification_callback");

stream_context_set_params($stream_or_context, $params);

$filename = "http://osbo.com/";
$use_include_path = false;

file_get_contents($filename, $use_include_path, $stream_or_context);

?>
connect
file size: 225
mime type: text/html; charset=iso-8859-1
redirected: https://osbo.com/

connect
mime type: text/html; charset=UTF-8
progress: 0
progress: 0
progress: 8192
progress: 16384
progress: 24576
progress: 32768
progress: 40960
progress: 49152
progress: 57344
progress: 65536
progress: 73728
progress: 81920
progress: 90112
progress: 98304
progress: 101926

PHP