Pregunta

Me he topado con la siguiente pecularidad:

$ handle = fopen (realpath (" ../ folder / files.php "), " r ");

no puede leer un archivo, pero tan pronto como elimine las etiquetas php del archivo, se vuelve legible y mis scripts imprimen contenido de archivo no vacío en la página. Además, file.php nunca se ejecuta, así que me pregunto por qué es el problema.

Supongo que de alguna manera Apache o PHP no permiten leer archivos que contengan etiquetas php PHP como solo texto.

¿Cómo puedo habilitarlo para mi archivo en particular (por supuesto, hacerlo globalmente no sería seguro)?

Usando PHP 5.2.xy Apache 2.0

¿Fue útil?

Solución

Lo tengo. Estaba usando Google Chrome para depurar la página, y me di cuenta de que al ver la fuente, Chrome oculta las etiquetas PHP por alguna razón. Ejecuté la misma prueba en Firefox, y ver la fuente demostró que todo estaba bien.

Aquí están los detalles de la prueba:

Código:

$fh = fopen("test.php","r");
while ($line = fgets($fh)){
echo $line;
}

Archivo para leer (test.php):

testing <?php testing2 ?> testing3

Representación (en Chrome y Firefox):

testing  testing3

Ver código fuente (usando Firefox):

<*>

Ver fuente (usando Chrome - fuente de mi error):

<*>

Otros consejos

¿Está seguro de que está interpretando la salida correctamente? Si imprime el contenido del archivo directamente en la salida de su página, un navegador no mostrará texto dentro de corchetes angulares porque cree que es una etiqueta. Sirva su contenido como text/plain, o use & Quot; ver fuente & Quot; comando para asegurarse de que está viendo lo que realmente está allí, y no solo lo que el navegador eligió para mostrar.

Hmm file_get_contents () está funcionando para mí. ¿Es un problema solo para fopen?

Editar: ¿qué error obtienes exactamente?

Wadih M. resolvió el problema. Las etiquetas PHP ocultan toda la salida de la fuente php incluida en la etiqueta en el navegador, pero Ver fuente las muestra. Gracias!

Estoy usando htmlspecialchars($line);

Solucionó el problema.

cambiar el nombre del archivo leerlo obtener sus datos cámbialos cambie el nombre de su archivo :)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top