Phar::webPhar

creationdev

Documentation

Référencement web expert
Référencement web expert

750$ CAD

Conception web extra
Conception web extra

5000$ CAD

Référencement web stratégique
Référencement web stratégique

1000$ CAD

Conception web ecommerce
Conception web ecommerce

2500$ CAD

Référencement web optimisé
Référencement web optimisé

500$ CAD

Formation référencement web
Formation référencement web

100$ CAD

Référencement web organique
Référencement web organique

300$ CAD

Conception web standard
Conception web standard

2500$ CAD

Conception d'application web
Conception d'application web

100$ CAD

Conception web microsite
Conception web microsite

1000$ CAD

Méthode

Méthode

Phar::webPhar

Phar::webPhar

Page Vue 26 déc. 2018
Page Vue 14 fois

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL phar >= 2.0.0)

Phar::webPhar — Redirige une requête depuis un navigateur web à un fichier interne dans l'archive phar

Description

final public static Phar::webPhar(
    ?string $alias = null,
    ?string $index = null,
    ?string $fileNotFoundScript = null,
    array $mimeTypes = [],
    ?callable $rewrite = null
): void

phar::webPhar() sert comme phar::mapPhar() pour les phars orientés web. Cette méthode parse $_SERVER['REQUEST_URI'] et route les requêtes d'un navigateur vers un fichier interne à l'archive. Cela simule un serveur web, en routant des requêtes vers le bon fichier, en envoyant les bons en-têtes et analysant le fichier PHP comme il convient. Combinée avec phar::mungServer() et phar::interceptFileFuncs(), n'importe quelle application web peut être utilisée sans changement à partir de l'archive phar.

phar::webPhar() doit être appelé uniquement à partir du conteneur de chargement d'une archive phar (lisez ceci pour en savoir davantage sur les conteneurs).

Liste de paramètres

alias

L'alias qui peut être utilisé dans l'URL phar:// pour se référer à l'archive, plutôt que son chemin complet.

index

L'emplacement au sein de l'archive de l'index de répertoire.

fileNotFoundScript

L'emplacement du script à exécuter quand un fichier n'est pas trouvé. Ce script doit envoyer des en-têtes HTTP 404 corrects.

mimeTypes

Un tableau faisant correspondre des extensions de fichier supplémentaires à des types MIME. Si les correspondances par défaut suffisent, passez un tableau vide. Par défaut, ces correspondances sont les suivantes : <?php
$mimes = array(
'phps' => Phar::PHPS, // passage vers highlight_file()
'c' => 'text/plain',
'cc' => 'text/plain',
'cpp' => 'text/plain',
'c++' => 'text/plain',
'dtd' => 'text/plain',
'h' => 'text/plain',
'log' => 'text/plain',
'rng' => 'text/plain',
'txt' => 'text/plain',
'xsd' => 'text/plain',
'php' => Phar::PHP, // parse en tant que PHP
'inc' => Phar::PHP, // parse en tant que PHP
'avi' => 'video/avi',
'bmp' => 'image/bmp',
'css' => 'text/css',
'gif' => 'image/gif',
'htm' => 'text/html',
'html' => 'text/html',
'htmls' => 'text/html',
'ico' => 'image/x-ico',
'jpe' => 'image/jpeg',
'jpg' => 'image/jpeg',
'jpeg' => 'image/jpeg',
'js' => 'application/x-javascript',
'midi' => 'audio/midi',
'mid' => 'audio/midi',
'mod' => 'audio/mod',
'mov' => 'movie/quicktime',
'mp3' => 'audio/mp3',
'mpg' => 'video/mpeg',
'mpeg' => 'video/mpeg',
'pdf' => 'application/pdf',
'png' => 'image/png',
'swf' => 'application/shockwave-flash',
'tif' => 'image/tiff',
'tiff' => 'image/tiff',
'wav' => 'audio/wav',
'xbm' => 'image/xbm',
'xml' => 'text/xml',
);
?>

rewrite

La fonction de ré-écriture est passée prend comme seul paramètre une chaîne et doit retourner une chaîne de caractères ou false.

Si vous utilisez fast-cgi ou cgi, le paramètre passé à la fonction est la valeur de la variable $_SERVER['PATH_INFO']. Sinon, le paramètre passé à la fonction est la valeur de la variable $_SERVER['REQUEST_URI'].

Si une chaîne est retournée, elle sera utilisée dans le chemin interne du fichier. Si false est retourné, alors webPhar() enverra un code HTTP 403.

Valeurs de retour

Aucune valeur n'est retournée.

Erreurs / Exceptions

Lève une exception PharException quand le fichier interne ne peut pas être ouvert ou si l'appel est fait en dehors d'un conteneur. Si une valeur de tableau non valide est passée dans mimeTypes ou si une fonction de rappel invalide est passée au paramètre rewrite, alors une exception UnexpectedValueException est levée.

Historique

Version Description
8.0.0 fileNotFoundScript et rewrite sont désormais nullable.

Exemples

Exemple #1 Exemple avec phar::webPhar()

Dans l'exemple ci-dessous, le phar créé affichera Salut tout le monde si quelqu'un appelle /monphar.phar/index.php ou /monphar.phar, et affichera la source de index.phps si /monphar.phar/index.phps est appelé.

<?php
// l'archive phar est créée :
try {
$phar = new Phar('monphar.phar');
$phar['index.php'] = '<?php echo "Salut tout le monde"; ?>';
$phar['index.phps'] = '<?php echo "Salut tout le monde"; ?>';
$phar->setStub('<?php
phar::webPhar();
__HALT_COMPILER(); ?>');
} catch (Exception $e) {
// on traite les erreurs ici
}
?>

Voir aussi

  • phar::mungServer() - Définit une liste de maximum 4 variables $_SERVER qui doivent être modifiées lors de l'exécution
  • phar::interceptFileFuncs() - Informe phar qu'il doit intercepter les fonctions de fichiers


Source : http://www.php.net/
Ref : methode-phar::webphar.php




Contact

Contact

Veuillez saisir les infos dans le formulaire d'identification
suivant pour concevoir et référencer votre site.









Veuillez saisir votre message.

Carte d'affaires

Affichage de la carte d'affaires recto/verso.

Carte d'affaires recto
Carte d'affaires verso

Partagez

Partagez

Discussion ayant comme sujet la page Phar::webPhar.

©2025 creationdev -  F.A.Q. -  Soutien -  Haut de page
THÈMES: