Usuario:ManuelRomero/php/NewPHP/B2T1/Sintaxis P
LENGUAJE PHP: EL LENGUAJE EN GENERAL
PHP Un lenguaje de script al lado del servidor
Introducción a PHP
Qué es php
- PHP (acrónimo de PHP: Hypertext Preprocessor)
- Es un lenguaje de código abierto.
- Muy popular (Podríamos pensar en un estándar?)
- Gran comunidad con soporte en internet que aporta, colabora y soluciona dudas.
- Para el desarrollo web.
- Nueva versión 7 con grandes cambios en el motor.
- Se usa mucho la versión 5.9
- Actualmente está la versión 7.2.9 (16 Aug 2018).
- Principales cambios en el motor de ejecución (Mucho mas potente).
- Muy pocas imcompatibilidades.
- Permite tipados explícitos.
- características de php
- En las aplicaciones de desarrollo web
- Se ejecuta en el servidor web
- Es incrustado en HTML.
- El cliente solo ve el resultado de la ejecución nunca el código
- El servidor en acción
- El servidor en acción
|
Restricciones del servidor con php
- Como PHP se ejecuta del lado del servidor sólo puede tener acceso a los datos del propio servidor.
Configuraciones
- PHP se puede instalar:
- Servicio independiente (PHP-FPM (FastCGI Process Manager)).
- Como un módulo de apache, php-mod.
- Directivas de PHP.ini
http://www.php.net/manual/es/ini.list.php
- Funciones que quedaron obsoletas en PHP 5.3.x
http://php.net/manual/es/migration53.deprecated.php
- Características obsoletas en PHP 7.0.x
http://php.net/manual/es/migration70.deprecated.php http://php.net/manual/es/migration70.incompatible.php
Cómo escribir PHP
- Dentro de páginas html
<?php instrucciones ?>
- Nosotros siempre usaremos este estilo para escribir código
- Lo podemos embeber en código html .... o no.
- Otros modos menos usados
- Estilo asp
<% instrucciones %>
- Para ello hemos de tener habilitado la etiqueta de php.ini
asp_tags 1
- Estilo corto
<? instrucciones ?>
- Para ello hemos de tener habilitado la etiqueta de php.ini
short_open_tag 1
- Sintaxis para editores HTML
<SCRIPT LANGAGE="PHP"> instrucciones </SCRIPT>
- En la versión 7.0.0 de php se elimina las etiquetas siguientes:
- <%, %> (formato ASP)
- #<%= (formato corto)
- y la etiqueta de script <script language=""
- Guardamos el fichero con extensión .php
- Así sabemos que el interprete php tiene que ejecutar código
- Haz un programa que en php que ejecute la función phpinfo()
Primer programa |
---|
<html> <head> <meta charset="UTF-8"> <title></title> </head> <body> <?php phpinfo(); ?> </body> </html> |
Programa: conjunto de instrucciones
Planteando un lenguaje de programación
- Léxicos
- Son las palabras reservadas del lenguaje.
http://php.net/manual/es/reserved.keywords.php
- Sintaxis
Reglas de construcción. Son las ya conocidas, pero veremos cómo se construyen las expresiones.
- Semántica
Habla del significado.
Instrucciones en un lenguaje de programación
- Inicio Fin de bloque
- Instrucción/función de leer del teclado, escribir por pantalla
- Declaraciones (variables, constantes, funciones, clases, objetos, ...)
- Asignación
- Invocación (llamada a función o método)
- Estructura de control (selectiva, iterativa)
- Instrucción de inicio fin de bloque
{ //Instrucción de inicio de bloque } //Instrucción de fin de bloque
- inicio del programa se especifica con las etiquetas
<?php //Etiqueta de inicio de script ?> //Etiqueta de fin de script
}}
- Separando instrucciones
- ; (punto y coma)
- Su uso es obligatorio.
- En la última instrucción se puede obviar (excepción).
- ?> implica esta instrucción.
- La instrucción inicio de bloque y fin de bloque no lleva nunca ;
<html> ...... <?php echo "hola" ?> <!-- instrucciones html --> <?php echo "otro hola" ?> <!-- mas instrucciones html --> <?php echo "otra instrucción " ?> ..... </html>
- Poniendo ;
<html> ...... <?php echo "hola" ;?> <!-- instrucciones html --> <?php echo "otro hola" ; ?> <!-- mas instrucciones html --> <?php echo "otra instrucción " ; ?> ..... </html>
Posible solución |
---|
</body> </html> <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title> <?php echo "Este es un título desde php" ?> </title> </head> <body> <?php echo "<h1>Mensaje en texto de h1</h1>"; echo "<h2>Mensaje en texto de h2</h2>"; echo "<h3>Mensaje en texto de h3</h3>"; ?> </body> </html> |
- Esto es lo que ve el cliente
Idioma no válido.
Necesita especificar un idioma como esto: <source lang="html4strict">...</source>
lenguajes soportados para sintaxis remarcada:
4cs, 6502acme, 6502kickass, 6502tasm, 68000devpac, abap, actionscript, actionscript3, ada, algol68, apache, applescript, apt_sources, arm, asm, asp, asymptote, autoconf, autohotkey, autoit, avisynth, awk, bascomavr, bash, basic4gl, bf, bibtex, blitzbasic, bnf, boo, c, c_loadrunner, c_mac, caddcl, cadlisp, cfdg, cfm, chaiscript, cil, clojure, cmake, cobol, coffeescript, cpp, cpp-qt, csharp, css, cuesheet, d, dcl, dcpu16, dcs, delphi, diff, div, dos, dot, e, ecmascript, eiffel, email, epc, erlang, euphoria, f1, falcon, fo, fortran, freebasic, freeswitch, fsharp, gambas, gdb, genero, genie, gettext, glsl, gml, gnuplot, go, groovy, gwbasic, haskell, haxe, hicest, hq9plus, html4strict, html5, icon, idl, ini, inno, intercal, io, j, java, java5, javascript, jquery, kixtart, klonec, klonecpp, latex, lb, ldif, lisp, llvm, locobasic, logtalk, lolcode, lotusformulas, lotusscript, lscript, lsl2, lua, m68k, magiksf, make, mapbasic, matlab, mirc, mmix, modula2, modula3, mpasm, mxml, mysql, nagios, netrexx, newlisp, nsis, oberon2, objc, objeck, ocaml, ocaml-brief, octave, oobas, oorexx, oracle11, oracle8, oxygene, oz, parasail, parigp, pascal, pcre, per, perl, perl6, pf, php, php-brief, pic16, pike, pixelbender, pli, plsql, postgresql, povray, powerbuilder, powershell, proftpd, progress, prolog, properties, providex, purebasic, pycon, pys60, python, q, qbasic, rails, rebol, reg, rexx, robots, rpmspec, rsplus, ruby, sas, scala, scheme, scilab, sdlbasic, smalltalk, smarty, spark, sparql, sql, stonescript, systemverilog, tcl, teraterm, text, thinbasic, tsql, typoscript, unicon, upc, urbi, uscript, vala, vb, vbnet, vedit, verilog, vhdl, vim, visualfoxpro, visualprolog, whitespace, whois, winbatch, xbasic, xml, xorg_conf, xpp, yaml, z80, zxbasic
</body> </html> <!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title> Este es un título desde php </title> </head> <body> <h1>Mensaje en texto de h1</h1><h2>Mensaje en texto de h2</h2><h3>Mensaje en texto de h3</h3></body> </html>