6 Caractéristiques
Manuel PHP
. Identification HTTP avec PHP . Cookies . Gestion des chargements de fichier ->Utilisation des fichiers à distance . Gestion des connexions . Connexions persistantes aux bases de données . Safe mode . Utiliser PHP en ligne de commande
|
6.4 Utilisation des fichiers à distance
Aussi longtemps que le support des gestionnaires d'URL ("URL fopen wrapper")
sont activés dans le
php.ini
, vous pouvez utiliser des URLs
(HTTP et FTP) avec la majorité des fonctions qui utilisent un
nom de fichier comme paramètre. Cela inclut notamment
include
,
include_once
,
require
et
require_once
.
Reportez-vous à Liste des protocoles supportés pour plus d'informations
sur les protocoles supportés par
PHP
.
Note |
En PHP 4.0.3 et plus récent, pour pouvoir utiliser les gestionnaires
d'URL, vous devez configurer
PHP
avec l'option
--enable-url-fopen-wrapper
.
|
Note |
Les versions de
PHP
pour Windows plus anciennes que 4.3
de supportait pas les gestionnaires d'URL avec les fonctions suivantes :
include
,
include_once
,
require
,
require_once
,
et les fonctions de création d'images de l'extension Images .
|
Par exemple, vous pouvez suivre l'exemple suivant pour ouvrir un
fichier sur un serveur web distant, analyser les résultats
pour extraire les informations dont vous avez besoin, et ensuite
l'utiliser dans une requête de base de données, ou
simplement éditer les informations dans le style de votre site.
Connaître le titre d'une page distante |
<?php $file = fopen ("http://www.example.com/", "r"); if (!$file) { echo "<p>Impossible de lire la page.\n"; exit; } while (!feof ($file)) { $line = fgets ($file, 1024); /* Cela ne fonctionne que si les balises Title sont correctement utilisées */ if (eregi ("<title>(.*)</title>", $line, $out)) { $title = $out[1]; break; } } fclose($file); ?>
|
Vous pouvez aussi écrire des fichiers sur un serveur FTP
aussi longtemps que vous êtes connecté avec un
utilisateur ayant les bons droits d'accès, alors que le
fichier n'existait pas encore.
Pour vous connecter avec un
utilisateur autre qu'anonyme, vous devez spécifier un
nom d'utilisateur (et certainement le mot de passe) dans l'URL,
comme par exemple 'ftp://user:password@ftp.example.com/path/to/file'.
(Vous pouvez utiliser le même type de syntaxe pour accéder
aux fichiers via
HTTP
lorsqu'ils nécessitent une
authentification basique).
Stocker des données sur un serveur distant |
<?php $file = fopen ("ftp://ftp.example.com/incoming/outputfile", "w"); if (!$file) { echo "<p>Unable to open remote file for writing.\n"; exit; } /* Ecriture des données. */ fputs ($file, $_SERVER['HTTP_USER_AGENT'] . "\n"); fclose ($file); ?>
|
Note |
Remarque: Vous pouvez avoir l'idée,à partir de
l'exemple ci-dessus, d'utiliser la même technique pour
écrire sur un log distant, mais comme mentionné ci-dessus
vous ne pouvez qu'écrire sur un nouveau fichier en utilisant
les fonctions
fopen
avec une URL. Pour faire des log
distribués, nous vous conseillons de regarder la partie
syslog
.
|
|