(PHP 5 >= 5.3.0, PHP 7, PECL phar >= 1.0.0)
Phar::offsetSet — Met le contenu d'un fichier interne à l'archive à l'identique du contenu d'un fichier externe
$offset
, string $value
)Note:
Cette méthode nécessite que la variable de configuration INI phar.readonly soit définie à 0 pour fonctionner avec les objets Phar. Sinon, une exception PharException sera lançée.
C'est une implémentation de l'interface ArrayAccess qui permet la manipulation directe du contenu d'une archive Phar en utilisant les crochets d'accès au tableau. offsetSet est utilisé pour modifier un fichier existant ou pour ajouter un nouveau fichier à l'archive Phar.
offset
Le nom de fichier (en chemin relatif) à chercher dans le Phar.
value
Contenu du fichier.
Aucune valeur de retour.
Si phar.readonly est à 1, une exception BadMethodCallException est levée, car modifier un Phar n'est permis que quand phar.readonly est à 0. Une exception PharException est levée s'il y a eu un problème lors de l'écriture des changements de l'archive Phar sur le disque.
Exemple #1 Un exemple avec Phar::offsetSet()
offsetSet ne doit pas être accédé directement, mais plutôt via l'opérateur d'accès au tableau, [].
<?php
$p = new Phar('/chemin/vers/mon.phar', 0, 'mon.phar');
try {
// appelle offsetSet
$p['fichier.txt'] = 'Salut';
} catch (Exception $e) {
echo 'Ne peut pas modifier fichier.txt:', $e;
}
?>