Estaba ejecutando el siguiente código PHP :
<?php
</script>
?>
No hubo errores de análisis y el resultado fue " ?>" ( ejemplo ).
En casos similares recibo un error de análisis:
<?php
</div>
?>
Error de análisis: error de sintaxis, '<' inesperado en ...
¿Por qué no <?php </script> ?>da el mismo error?
php
syntax
parse-error
Irfan
fuente
fuente

Respuestas:
Esto debe ser porque hay varias formas de iniciar un bloque de código PHP :
<? ... ?>(conocido comoshort_open_tag)<?php ... ?>(el estándar realmente)<script language="php"> ... </script>(no recomendado)<% ... %>(etiqueta de estilo ASP obsoleta y eliminada después de 5.3.0)Aparentemente, puede abrir un bloque PHP de una manera y cerrarlo de la otra. No lo sabia.
Entonces, en su código, abrió el bloque usando
<?pero PHP reconoce</script>como el cerrador. Lo que paso fue:fuente
<script language="php">no se recomienda su uso.short_open_tagdirectiva. En PHP 5.4<?=corto para<?php echoya no requiere elshort_open_tag. Ir entre sistemas donde<?=estaba disponible y no disponible siempre me frustraba. php.net/manual/en/ini.core.php#ini.short-open-tag<?php ... ?>: php.net/manual/en/language.basic-syntax.phpmode.phpEn PHP, puede usar la
scriptetiqueta para abrir un bloque PHP.Entonces puedes usar
Así que en su ejemplo que haya mezclado la etiqueta abierta normal,
<?phpcon la etiqueta de cierre,</script>. Por lo tanto, el analizador supone que todo el texto después de la etiqueta del script de cierre es normalHTML.Lea más en Escaping from HTML .
fuente