# Phar::offsetSet

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

Phar::offsetSet — Establecer el contenido de un fichero interno a aquel de un fichero externo

### Descripción

public Phar::offsetSet(string `$offset`, string `$value`): void

> Nota:

> Este método requiere que la opción de php.ini `phar.readonly` esté establecida a `0` para que trabaje con objetos Phar. De otra manera, se lanzará una excepción de tipo PharException.

Ésta es una implementación de la interfaz ArrayAccess que permite la manipulación directa del contenido de un archivo Phar utilizando los corchetes de acceso al array. offsetSet se utiliza para modificar un fichero existente, o añadir un nuevo fichero al archivo Phar.

### Parámetros

`offset`

  El nombre del fichero (ruta relativa) a modificar en un Phar.

`value`

  El contenido del fichero.

### Valores devueltos

No devuelve ningún valor.

### Errores/Excepciones

Si phar.readonly es `1`, lanza una excepción de tipo BadMethodCallException, ya que modificar un Phar sólo está permitido cuando phar.readonly está establecido a `0`. Lanza un excepción de tipo PharException si existe cualquier problema volcando los cambios hechos al archivo Phar al disco.

### Ejemplos

Ejemplo #1 Un ejemplo de Phar::offsetSet()

No se debería acceder directamente a offsetSet, en su lugar se utiliza el operador `[]` para acceder al array.

`<?php
$p = new Phar('/ruta/a/mi.phar', 0, 'mi.phar');
try {
// llama a offsetSet
$p['fichero.txt'] = 'Hola qué tal';
} catch (Exception $e) {
echo 'No se pudo modificar fichero.txt:', $e;
}
?>`

### Ver también

- Phar::offsetExists() - Determina si un fichero existe en un phar
- Phar::offsetGet() - Obtener un objeto de la clase PharFileInfo para un fichero específico
- Phar::offsetUnset() - Eliminar un fichero de un phar