Saltar al contenido

file_get_contents con ruta relativa

Este team de expertos pasados varios días de investigación y recopilación de de información, dimos con la respuesta, queremos que todo este artículo sea de gran utilidad en tu plan.

Solución:

Has probado:

$json = file_get_contents(__DIR__ . '/../validate/edit.json');

__DIR__ es una constante mágica útil.

Para conocer los motivos, consulte http://yagudaev.com/posts/resolving-php-relative-path-problem/.

Cuando un archivo PHP incluye otro archivo PHP que a su vez incluye otro archivo, todos en directorios separados, el uso de rutas relativas para incluirlos puede generar un problema.

PHP a menudo informa que no puede encontrar el tercer archivo, pero ¿por qué? Bueno, la respuesta radica en el hecho de que al incluir archivos en PHP, el intérprete intenta encontrar el archivo en el directorio de trabajo actual.

En otras palabras, si ejecuta la secuencia de comandos en un directorio llamado A e incluye una secuencia de comandos que se encuentra en el directorio B, la ruta relativa se resolverá en relación con A al ejecutar una secuencia de comandos que se encuentra en el directorio B.

Por lo tanto, si la secuencia de comandos dentro del directorio B incluye otro archivo que se encuentra en un directorio diferente, la ruta aún se calculará en relación con A, no en relación con B, como cabría esperar.

intenta usar esto

$json = file_get_contents("/path/to/your/file/edit.json", true);

A partir de PHP 5, la constante FILE_USE_INCLUDE_PATH se puede usar para activar la búsqueda de ruta de inclusión. Esto no es posible si la tipificación estricta está habilitada ya que FILE_USE_INCLUDE_PATH es un int. Utilice VERDADERO en su lugar.

valoraciones y comentarios

Recuerda que puedes optar por la opción de parafrasear si atinaste tu apuro a tiempo.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *