¿Cuál es la diferencia entre el código fuente PHP y el código fuente ASP?
PHP y ASP no son el mismo lenguaje
¿Qué es el lenguaje ASP?
Las páginas de servidor activo (página de inicio del servidor dinámico, ASP para abreviar), incluidas en Internet Information Server (IIS), proporcionan un entorno de secuencias de comandos del lado del servidor que le permite generar y. ejecutar aplicaciones de servidor de sitio dinámicas, interactivas y eficientes. No tiene que preocuparse por si el navegador puede ejecutar las páginas Active Server que diseñó. El servidor de su sitio interpretará automáticamente el código del programa de las páginas Active Server en el contenido de la página en formato HTML estándar y lo mostrará en el navegador enviado al cliente. . Siempre que el cliente utilice un navegador convencional que pueda ejecutar código HTML,
puede explorar el contenido de la página de inicio diseñado por Active Server Pages.
Qué es el lenguaje PHP
PHP, un nombre abreviado anidado, es la abreviatura del inglés "Hypertext Preprocessing Language" (PHP: preprocesador de hipertexto). PHP es un lenguaje HTML integrado. PHP es algo similar al ASP de Microsoft. Ambos son "lenguajes de secuencias de comandos integrados en documentos HTML" que se ejecutan en el lado del servidor. El estilo del lenguaje es ampliamente similar al del lenguaje C. utilizado por muchos programadores de sitios web. La sintaxis única de PHP es una combinación de C, Java, Perl y la sintaxis innovadora propia de PHP. Puede ejecutar páginas web dinámicas más rápido que CGI o Perl. En comparación con otros lenguajes de programación, las páginas dinámicas creadas con PHP incorporan el programa en el documento HTML para su ejecución, y la eficiencia de ejecución es mucho mayor que la de CGI, que genera etiquetas HTML por completo, en comparación con el lenguaje de secuencias de comandos JavaScript, que también está integrado en HTML; document Por el contrario, PHP se ejecuta en el lado del servidor, aprovechando el rendimiento del servidor, el motor de ejecución de PHP también almacenará en la memoria los programas PHP a los que los usuarios acceden con frecuencia, y otros usuarios no necesitan compilar el programa cuando acceden a este programa. Una vez, simplemente ejecute el código en la memoria directamente, lo que también es una de las manifestaciones de la alta eficiencia de PHP. PHP tiene funciones muy potentes. Todas las funciones CGI o JavaScript pueden implementarse mediante PHP y es compatible con casi todas las bases de datos y sistemas operativos populares.
PHP fue creado originalmente por Rasmus Lerdorf en 1994. Comenzó como un programa simple escrito en lenguaje Perl para contar visitantes a su propio sitio web. Posteriormente fue reescrito en lenguaje C, incluido el acceso a la base de datos. La primera versión se lanzó en 1995 como Herramientas de página de inicio personal (Herramientas PHP). Lerdorf escribió algunos documentos que presentaban el programa y lanzó PHP 1.0. En esta primera versión, se proporcionaban funciones simples como libro de visitas y contador de visitas. En el futuro, cada vez más sitios web usaban PHP y había una gran necesidad de agregar algunas características, como declaraciones de bucle y variables de matriz, etc. Después de que nuevos miembros se unieron al equipo de desarrollo, se lanzó PHP 2.0 a mediados de 1995. La segunda versión se llama PHP/FI (Intérprete de formularios). PHP/FI agregó soporte para mSQL y desde entonces ha establecido la posición de PHP en el desarrollo web dinámico. A finales de 1996, había 15.000 sitios web que utilizaban PHP/FI; a mediados de 1997, el número de sitios web que utilizaban PHP/FI superaba los 50.000. A mediados de 1997, se inició el plan de desarrollo para la tercera versión. El equipo de desarrollo se unió a Zeev Suraski y Andi Gutmans, y la tercera versión se llamó PHP3. En 2000, salió PHP4.0, que agregó muchas características nuevas. .
Las características de PHP incluyen:
Código fuente abierto: prácticamente todo el código fuente PHP está disponible.
PHP es gratis.
Basado en el lado del servidor: dado que PHP se ejecuta en el lado del servidor, no importa cuántos usuarios o programas complejos haya, no afectará la velocidad de ejecución.
Multiplataforma: PHP puede ejecutarse bajo UNIX, LINUX y WINDOWS.
HTML incrustado: debido a que PHP puede incrustar lenguaje HTML, no es difícil de aprender.
Lenguaje sencillo: PHP insiste en el lenguaje de scripting como lenguaje principal, a diferencia de Java, que es C++.
Alta eficiencia: PHP consume relativamente pocos recursos del sistema.
Procesamiento de imágenes: crea imágenes dinámicamente con PHP
Comparación de PHP 3 y PHP 4
PHP3 está estrechamente integrado con el servidor Apache además de sus continuas actualizaciones; y agrega nuevas funciones; admite casi todas las bases de datos convencionales y no convencionales y su eficiencia de ejecución de alta velocidad ha hecho que PHP sea utilizado por más de 1,5 millones de sitios en 1999. Además, su código fuente está completamente abierto al público. Hoy en día, con el aumento de la conciencia Open Source, es el pilar en este sentido. La constante adición de nuevas bibliotecas de funciones y la vitalidad de las constantes actualizaciones permiten que PHP tenga más funciones nuevas, ya sea en plataformas UNIX, LINUX o Windows. Proporciona funciones ricas para brindar un mejor soporte en la programación.
PHP4.0 ha cambiado significativamente el núcleo de todo el programa de script, permitiendo que la velocidad de ejecución del programa cumpla con requisitos más rápidos. Después de la optimización, la eficiencia es mejor que la de los programas CGI o ASP tradicionales. También hay nuevas funciones más potentes y una biblioteca de funciones más rica. Lo acepte o no, PHP desencadenará una revolución revolucionaria en el campo de Web CGI. Para un Web Master profesional, también será uno de los cursos obligatorios.
PHP 4.0 es una herramienta de desarrollo de páginas web dinámicas más eficiente y confiable. Se ejecuta más rápido que PHP 3.0 en la mayoría de los casos. Su descripción de script es más poderosa y más compleja. La característica más importante es el aumento de la velocidad. . Estas excelentes prestaciones de PHP 4.0 son el resultado del rediseño del motor de script PHP: el motor fue completamente reescrito desde abajo hacia arriba por AndiGutmans y Zeev Suraski. El motor de secuencias de comandos PHP 4.0, el motor Zend, utiliza un enfoque más eficiente de "compilar-ejecutar", en lugar del modelo "ejecutar-cuando-se-analiza" adoptado por PHP 3.0.
PHP4 ha agregado o mejorado muchas características útiles basadas en la versión 3.0, principalmente las siguientes:
(1) Alias: en PHP4, puede usar referencias para asignar valores a variables Aporta una gran flexibilidad a la programación.
(2) Módulo API ampliado: PHP 4.0 proporciona un módulo de interfaz PHP extendido para el módulo API extendido, que es significativamente más rápido que la versión API anterior. La mayoría de las interfaces existentes y más utilizadas de los módulos PHP se han convertido para utilizar esta interfaz extendida.
(3) Liberación automática de recursos: PHP4 agrega una función de recuento de referencias. La introducción de esta nueva tecnología permite que PHP4 tenga funciones de administración automática de memoria, lo que reduce la carga para los desarrolladores.
(4) Tipo booleano: PHP 4.0 admite el tipo booleano.
(5) Generación de procesos: PHP 4.0 en el entorno UNIX proporciona un proceso de generación muy inteligente y versátil, utilizando una tecnología de generación de sistemas basada en automake/libtool.
(6) Compatibilidad con COM/DCOM: PHP 4.0 proporciona compatibilidad con COM/DCOM (solo para entornos Windows), que puede acceder y acceder sin problemas a objetos COM.
(7) Muy buena compatibilidad con PHP 3.0: PHP 4.0 es casi 100% compatible con versiones anteriores del código PHP 3.0. Debido a la arquitectura mejorada de PHP 4, existen algunas diferencias sutiles, pero la mayoría de las personas probablemente nunca se encontrarán con esta situación.
Introducción a PHP
(8) Configuración: PHP4 rediseña y mejora PHP. ini, que se crea usando PHP.
ini para configurar PHP es extremadamente fácil. Este archivo puede ser registrado por Apache (sistema Unix) o por Windows (entorno Windows) en tiempo de ejecución.
(9) Soporte de cifrado: PHP4 implementa un cifrado completo, estas funciones de cifrado son una biblioteca mycrypt completa y PHP 4.0 admite funciones hash. Blowfish, TripleDES, MD5 y SHA1 también son algunos de los algoritmos de cifrado que se pueden utilizar.
(10) Comprobación de tipos: PHP 4.0 admite el mismo operador para la comprobación de tipos: "===" (operador de 3 signos iguales), que comprueba entre dos valores y sus tipos. Por ejemplo, "3" ===3 se considerará falso (los tipos son diferentes), mientras que "3" ==3 (igualdad) se considerará verdadero.
(11) Compatibilidad con FTP: PHP 4.0 admite FTP. Normalmente, proporcionaría una interfaz para descargar un archivo grande a través de una conexión de módem. Sin embargo, si realmente lo necesitas, puedes usar PHP.
(12) Nuevas funciones de PHP4 o funciones mejoradas: PHP 4.0 ha agregado muchas funciones nuevas y también ha mejorado muchas funciones existentes. Aquí hay algunos ejemplos. array_count_values() eval() foreach() nclude() ob_end_clean() ob_end_flush() ob_get_contents() ob_start() strip_tags() unset()
(13) "aquí" print: "Aquí" de PHP 4.0 "La impresión es similar a Perl, aunque completamente diferente. "Aquí" es un método útil para imprimir artículos de gran volumen, como archivos HTML, sin perder ningún carácter, como las etiquetas de la tabla de contenido.
(14) Sistema de reserva de sesiones HTTP: en PHP 4.0 se implementa un sistema de reserva para la gestión de sesiones HTTP. De forma predeterminada, los identificadores de sesión se almacenan en cookies. Si no hay soporte para cookies o una tarea de cookies falla, el identificador de sesión se crea automáticamente y se incluye en la cadena de consulta de la URL.
(15) Compatibilidad con ISAPI: PHP 4.0 se puede utilizar como un módulo ISAPI personalizado como complemento de IIS. Esto es más eficiente que PHP 3.0, que se ejecuta como un programa externo.
(16) Memoria: PHP 4.0 puede usar la memoria de manera más eficiente, lo que resulta en un menor consumo de memoria, principalmente debido a la implementación de tecnología de conteo de referencias.
(17) Funciones miembro de otras clases: en PHP 4.0, puede llamar a funciones miembro de otras clases en el alcance de la función miembro misma o en el alcance global. Por ejemplo, puede anular una función principal con una función secundaria y llamar a la función principal en la función secundaria.
(18) Matrices multidimensionales: en PHP 4.0, la transmisión de datos mediante GET, POST y Cookies admite matrices multidimensionales.
(19) Compatibilidad con sesiones HTTP personalizadas: el procesamiento de sesiones HTTP, incluida la administración del sistema alternativo, se implementa mediante su nueva función de biblioteca en PHP 4.0. El manejo de sesiones en la versión 3.0 requiere el uso de PHPLIB y funciones de biblioteca de terceros, lo cual es mucho más lento que tener sesiones soportadas directamente por PHP.
(20) Soporte Java personalizado: PHP 4.0 admite la interacción con Java. Este soporte Java personalizado proporciona a PHP una herramienta simple y eficiente para crear y usar métodos en objetos Java.
21) Objetos y grupos anidados de números: PHP 4.0 implementa objetos más potentes y elimina varias restricciones de sintaxis que existían en PHP 3.0.
Los objetos se pueden anidar dentro de matrices y viceversa, según sus necesidades.
(22) Programación orientada a objetos: PHP 4.0 proporciona funcionalidad extendida y nuevas características para la programación orientada a objetos y la construcción de clases y objetos. PHP4 implementa nuevas tecnologías como la sobrecarga de objetos y la tecnología de referencia.
(23) Soporte de sobrecarga de objetos: la sintaxis de sobrecarga de objetos permite que las bibliotecas de clases orientadas a objetos de terceros utilicen las características orientadas a objetos de PHP4 para acceder a sus propias funciones. Se ha implementado un módulo COM que utiliza esta característica.
(24) Soporte de almacenamiento en búfer de salida: PHP proporciona una colección de funciones de almacenamiento en búfer de salida. La compatibilidad con el almacenamiento en búfer de salida le permite escribir funciones que envuelven funciones alrededor de búferes comprimidos. La compatibilidad con el almacenamiento en búfer de salida en PHP4 permite almacenar la información del encabezado HTML independientemente de si se genera el cuerpo HTML. La información del encabezado ((encabezado(), tipo de contenido y cookies) no utiliza almacenamiento en búfer.
(25) Biblioteca PCRE agregada: PHP 4.0 incluye una biblioteca de expresiones regulares (PCRE) compatible con Perl y la normal. La biblioteca Regex se incluye con PHP. Las funciones PCRE para dividir y reemplazar son compatibles.
(26) El archivo PHP.ini en PHP4 ha sido rediseñado para hacer que la configuración de PHP sea más fácil y eficiente. ser manipulado por Apache en tiempo de ejecución (bajo Apache) o agregado por el registro de Windows (bajo Windows). Las directivas de configuración en el archivo PHP.ini se admiten automáticamente en todos los módulos relacionados.
(27) Recuento de referencias: PHP 4.0 proporciona un recuento de referencia para cada valor en el sistema, incluidos los recursos. Ninguna variable ya hace referencia al recurso y se libera automáticamente para ahorrar recursos de memoria. El ejemplo más obvio del uso de esta característica es un SQL incorporado. declaración de bucle de consulta que asigna memoria repetidamente para cada conjunto de resultados SQL recursivo, la memoria ocupada por estos conjuntos de resultados no se libera hasta que se ejecuta el script
(28) Admite referencias: el valor de una variable puede. se pueden cambiar a través de referencias
(29) Función. Enlace en tiempo de ejecución: la función de enlace en tiempo de ejecución de PHP 4.0 le permite llamarlos antes de que se declaren, independientemente de si la declaración se encuentra más adelante en el código o en tiempo de ejecución.
(30) Información de tiempo de ejecución para clases: PHP 4.0 admite el acceso a la siguiente información de clase en tiempo de ejecución: el nombre de clase de un objeto, el nombre de clase de la clase principal de un objeto y el nombre de la clase principal de un objeto. función.
(31) Capa de abstracción del servidor: para admitir. El servidor web proporciona una interfaz SAPI (Server API) mejorada, que es una parte integral de PHP 4.0. Esta capa de abstracción del servidor proporciona una interfaz de servidor WEB universal. admite servidores WEB de subprocesos múltiples y proporciona transparencia para la mayoría de los servidores WEB. Estos servidores incluyen servidores Apache, IIS (ISAPI) y AOL
(32) Resaltado de sintaxis: resaltado de sintaxis PHP 4.0. permite a los desarrolladores ver el código fuente en lugar del script. Esta característica es más eficiente que en PHP 3.0. Se ejecuta más rápido, funciona mejor y produce código HTML más compacto.
(33) Cambiar el valor de. una variable por referencia: PHP 4.0 admite la asignación de variables por referencia. Si se cambia el valor de cualquiera de las dos variables "asociadas", también se cambiará el valor de la otra variable, que es similar al tipo de puntero en C. .
(34) Referencias a variables en cadenas de referencia: PHP 4.0 mejora las referencias a variables en cadenas de referencia.
Por ejemplo, este ejemplo es imposible de hacer en PHP 3.0: print “${a[0]->bingo}”
El amplio soporte de PHP para bases de datos es también una de las razones de su rápida popularidad. soporta las siguientes bases de datos o archivos de datos:
· Adabas D
· DBA
· dBase
· dbm
· filePro
· Informix
· InterBase
· mSQL
· Microsoft SQL Server
· MySQL
· Sólido
· Sybase
· ODBC
· Oracle 8
· Oracle p>
·PostgreSQL
En Internet, también admite bastantes protocolos de comunicación (protocolos), incluidos IMAP relacionados con el correo electrónico, POP3, sistema de gestión de red SNMP; seguridad de cuentas de red; NIS; red global de información HTTP y servidor Apache; protocolo de directorio LDAP y otras funciones relacionadas con la red.
Además, los programas CGI de back-end web escritos en PHP se pueden portar fácilmente a diferentes sistemas operativos. Por ejemplo, si un sitio web se crea por primera vez en Linux, cuando la carga del sistema es demasiado alta, todo el sistema se puede mover rápidamente a una estación de trabajo SUN sin tener que volver a compilar el programa CGI. Ante el rápido desarrollo de Internet, esta es la mejor opción para la planificación a largo plazo.
Después de agregar otros módulos, se proporciona soporte más diverso de la siguiente manera:
·Revisión ortográfica en inglés
·Cálculo de alta precisión BC
· Calendario occidental
· Formato de archivo PDF
· Servidor Hyperwave
· Procesamiento gráfico
· Funciones de cifrado y decodificación
· Procesamiento hash
· Función WDDX
· Sistema qmail y vmailmgr
· Procesamiento de archivos comprimidos
· Análisis XML
Además, tiene todas las funciones como operaciones matemáticas, procesamiento de tiempo, sistema de archivos, procesamiento de cadenas y procesamiento de itinerarios que tienen los lenguajes generales. Sumado al hecho de que es un sistema gratuito, ¡la relación costo-beneficio es casi infinita!
3.3 Comparación de PHP y sus lenguajes
Sin duda, hay muchas formas de escribir CGI, y PHP es solo una de las opciones. Para los webmasters experimentados, el lenguaje de escritura CGI debería cambiar según las necesidades. Después de todo, en un sistema que tiene requisitos extremadamente estrictos sobre la velocidad de respuesta del sistema, me temo que solo los programas CGI escritos en lenguaje NSAPI pueden cumplir con los requisitos. En otras situaciones, creo que utilizar PHP como lenguaje CGI es cómodo y el más adecuado.
La siguiente es una comparación de varios lenguajes:
Lenguaje de programación PHP ASP CGI NSAPI ISAPI
El sistema operativo puede ser Win32, ambos pueden ser Win32 p>
Se pueden utilizar varios tipos de IIS para servidores web, incluido Netscape Server IIS
La eficiencia de ejecución es rápida, lenta, extremadamente rápida, extremadamente rápida
Buena estabilidad, media a máxima diferencia, diferencia
Desarrollo El tiempo es corto, medio y largo
El tiempo de modificación es corto, medio y largo
Lenguaje de programación PHP VB No limitado a C/C++ C/Delphi
Integración de páginas web Pobre, pobre, pobre
Bajo bajo, alto, muy alto, alto, alto
No estoy seguro de cuántos las funciones son compatibles, media, poca
Seguridad del sistema, buena, muy pobre, óptima, buena, regular
p>
Hay tantos sitios para usar
La velocidad de revisión es muy rápida
El PHP se puede utilizar en varios servidores web; el CGI tradicional no se limita a qué sistema operativo o plataforma de servidor web debe ejecutarse en el servidor de Netscape; Netscape Enterprise Server o FastTrack Server), pero puede admitir múltiples sistemas operativos (UNIX o Win32) y ASP e ISAPI solo se pueden ejecutar en IIS. Hay funciones completas.
En términos de estabilidad, al ser NSAPI o ISAPI son métodos de enlace dinámico, si hay algún problema en la ejecución, el servidor web quedará paralizado. En nuestra experiencia real con aplicaciones, ASP hará que el sistema se vuelva inestable después de un tiempo y requerirá que se reinicie el sistema operativo. PHP se utiliza en muchos sitios. No solo no tiene problemas en el uso a largo plazo, sino que la estabilidad del programa también es buena. Por supuesto, el más estable es el programa CGI tradicional, porque está controlado por el sistema operativo y el servidor web no será inestable debido a errores en el programa CGI.
En términos de tiempo de desarrollo y mantenimiento, tanto PHP como ASP funcionan bien. NSAPI e ISAPI requieren un largo proceso de desarrollo después de su lanzamiento estable. Estos dos lenguajes son en realidad los métodos más eficientes. Los programas CGI tradicionales dependen del lenguaje de la herramienta de desarrollo. Perl o el script de shell no requieren compilación y se pueden ejecutar directamente en Delphi o VC/BCB, o incluso el lenguaje ensamblador debe compilarse antes de la ejecución. Ay...
Para comparar la capacidad de integración con páginas web, PHP y ASP están codo con codo. Otros métodos no pueden incorporar la sintaxis HTML. Y este es uno de los factores que afecta el tiempo de desarrollo.
En lo que respecta a la seguridad del sistema, ASP es el peor. Sin ser procesado por el Service Pack IIS de Microsoft, puedes ver el código fuente de ASP usando ::$DATA. Esto es realmente molesto. aprender. Por supuesto, los programas CGI tradicionales son los más difíciles de descifrar porque son administrados directamente por el sistema operativo. Los piratas informáticos deben comenzar con el sistema operativo, no con el servidor web. PHP se utiliza en muchas aplicaciones comerciales y no comerciales, y nunca he oído hablar de ningún problema de seguridad.
En cuanto a nuevas funciones y revisiones, el CGI tradicional no tiene problemas al respecto porque no está sujeto a ninguna restricción de idioma. PHP es el más dinámico. Aparece una nueva versión cada pocos días o semanas. Cada nueva versión significa más funciones y más errores. Otros ASP, NSAPI e ISAPI dependen de la velocidad de la revisión de su servidor web. ASP no tendrá ASP 3.0 hasta que aparezca IIS 5.0.
En resumen, los programas CGI de back-end en la Web son como pez y garras de oso, sin opciones de alto rendimiento y fáciles de desarrollar. Sin embargo, creo que PHP se encuentra en un punto de equilibrio donde el desarrollo es fácil y el rendimiento es bueno.
Si ASP es un COM, entonces PHP es más preciso. Se puede decir que PHP es un traductor de script puro. Esta es también una de las principales razones por las que PHP se actualizó de 3.0 a 4.0. En la versión 4.0, se reescribió el analizador de sintaxis, lo que aceleró el rendimiento general de PHP. Y a partir de esto también entenderás por qué PHP debe recompilarse con la biblioteca lib del sistema correspondiente cuando necesita soportar tal o cual función extendida. Precisamente porque es un "traductor" auténtico, traduce scripts en funciones que deben ejecutarse y luego las ejecuta. La expansión externa no se puede realizar mediante algunos métodos de "carga dinámica", por lo que solo se puede compilar estáticamente en PHP. (Esto sólo es posible excepto en Windows).