Beruflich Dokumente
Kultur Dokumente
Introduccin a PHP
?>
</body>
</html>
<?php
if ($user == "pepe")
{
// cdigo para pepe
}
elseif ($user == "juan")
{
// cdigo para juan
}
else
{
// cdigo para quienes no son
// juan ni pepe
}
?>
switch ($op) {
case "a":
// cdigo que se ejecuta si $op vale "a"
break;
case "b":
// cdigo que se ejecuta si $op vale "b"
break;
case "c":
// cdigo que se ejecuta si $op vale "c"
break;
default:
// cdigo a ejecutar por defecto si no se cumple ninguna condicin
}
?>
For
<?php
for($i=1; $i<=10; $i++) {
echo "$i<br>";
}
?>
Do/while
<?php
$i=11;
do
{
echo "$i<br>";
$i++;
} while ($i <=10);
?>
Flotantes
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
Comillas simples
Echo Cadena de caracteres;
Echo Las variables NO se {$expanden}
Echo Las posiciones de arrays NO se {$expanden[apellido]}
PHP - Funciones
Funciones
<?php
function foo($arg_1, $arg_2, /* ..., */ $arg_n)
{
echo "Example function.\n";
return $retval;
}
?>
Funciones de funciones
<?php
function foo()
{
function bar()
{
echo "I don't exist until foo() is called.\n";
}
}
?>
Funciones recursivas
<?php
function recursion($a)
{
if ($a < 20) {
echo "$a\n";
recursion($a + 1);
}
}
?>
PHP - Parmetros
Por valor
Por referencia
<?php
function add_some_extra(&$string)
{
$string .= 'and something extra.';
echo makecoffee(); // Making a cup of cappuccino.
}
echo makecoffee(null); // Making a cup of .
echo makecoffee("espresso"); // Making a cup of espresso.
$str = 'This is a string, ';
add_some_extra($str);
?>
Echo $str;
?>
PHP - Clases
<?php
class SimpleClass
{
// property declaration
public $var = 'a default value';
// constant declaration
const constant = 'constant value';
// method declaration
public function displayVar() {
echo $this->var;
}
function showConstant() {
echo self::constant . "\n";
}
PHP - Herencia
<?php
class ExtendClass extends SimpleClass
{
// Redefine the parent method
function displayVar()
{
echo "Extending class\n";
parent::displayVar();
}
}
$extended = new ExtendClass();
$extended->displayVar();
?>
function __destruct() {
print "Destroying ;
}
?>
PHP Visibilidad de
propiedades y mtodos
class MyClass
{
public $public = 'Public';
protected $protected = 'Protected';
private $private = 'Private';
function printHello()
{
echo $this->public;
echo $this->protected;
echo $this->private;
}
Interface
Permite especificar qu mtodos deben ser implementados por una clase
( no su comportamiento )
Son definidas utilizando la palabra clave interface
Todos los mtodos declarados en una interfaz deben ser public, ya que
sta es la naturaleza de una interfaz.
La clase que implemente una interfaz debe utilizar exactamente las
mismas estructuras de mtodos que fueron definidos en la interfaz. De
no cumplir con esta regla, se generar un error fatal.
Para indicar que una clase implementa una interfaz, se utiliza el
operador implements. Las clases pueden implementar ms de una
interfaz si se deseara, separndolas cada una por una coma.
Interface
interface animal {
function breath();
function eat();
}
class dog implements animal{
function breath() {
echo dog is breathing ;
}
function eat() {
echo dog is easting ;
}
}
Namespaces
Encapsulan elementos
Ej: en un sistema operativo los directorios sirven para agrupar
archivos relacionados, y actuan como espacios de nombres para los
archivos que hay en ellos
Evita colisiones entre el cdigo que nosotros creamos y
clases/funciones/constantes internas de PHP o de terceras partes
<?php
namespace my\name;
class MyClass {
}
Namespaces
Ej: file1.php
<?php
namespace Foo\Bar\subnamespace;
const FOO = 1;
function foo() {
}
class foo
{
static function staticmethod() {}
}
?>
Namespaces
Ej: file2.php
/* Unqualified name */
<?php
namespace Foo\Bar;
foo();
foo::staticmethod();
echo FOO;
include 'file1.php';
const FOO = 2;
function foo() {
}
class foo
{
static function staticmethod()
{
}
}
/* Qualified name */
subnamespace\foo();
subnamespace\foo::staticmethod();
echo subnamespace\FOO;
/* Fully qualified name */
\Foo\Bar\foo();
\Foo\Bar\foo::staticmethod();
echo \Foo\Bar\FOO;
?>
PHP - Session
Permite almacenar valores a lo largo de subsiguientes accesos.
Cada visitante del sitio tiene asignado un id nica
Cuando una persona accede al sitio web, PHP intenta recuperar el estado
de la sesin
Las variables registradas en la sesin se serializan al termino de cada
request
Referencia de funciones
http://www.php.net/manual/en/ref.session.php
PHP - Session
Registro de variables de la sesin
<?php
session_start();
if (!isset($_SESSION['count'])) {
$_SESSION['count'] = 0;
} else {
$_SESSION['count']++;
}
?>