13.6 URL-Anforderung mit Timeout

Problem

Sie möchten eine entfernte URL anfordern, möchten aber nicht zu lange warten, wenn der entfernte Server überlastet oder zu langsam ist.

Lösung

Setzen Sie die Konfigurationsoption default_socket_timeout, wenn Sie mit http-Stream arbeiten. Listing 13.5 wartet nicht länger als 15 Sekunden, dass eine Verbindung mit dem entfernten Server hergestellt wird.

<?php
// Timeout von 15 Sekunden
ini_set('default_socket_timeout', 15);
$page = file_get_contents('http://slow.example.com/');

Listing 13.5 Mit http-Stream einen Timeout festlegen

Beachten Sie, dass sich die Änderung von default_socket_timeout auf alle neuen Sockets oder entfernten Verbindungen auswirkt, die während der weiteren Skriptausführung erzeugt werden.

Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.