Publicado el 14 de Julio del 2020
1.412 visualizaciones desde el 14 de Julio del 2020
46,4 KB
24 paginas
Creado hace 24a (22/11/2000)
Apuntes de PHP
Salvador Ramirez Flandes
22 de noviembre de 2000
Índice General
1 Introduccion
2 Sintaxis
. .
. .
. .
. .
.
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
2.1 Tipos de datos .
2.1.1
Strings
2.1.2 Arrays .
.
2.2 Variables
. .
.
.
2.3.1 Operadores .
.
.
.
.
.
.
.
.
.
2.2.1 Variables predefinidas
.
2.2.2 Alcance de variables .
2.2.3 Variables variables .
.
.
2.2.4 Variables externas en PHP .
2.2.5 Constantes
.
.
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2.4.1
.
2.4.2 while .
. .
.
do-while
2.4.3
.
.
2.4.4
for . .
.
. .
.
foreach . .
2.4.5
.
. .
switch .
2.4.6
.
2.4.7
break .
. .
continue . .
2.4.8
.
require(), include() .
2.4.9
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
2.3 Expresiones .
.
.
.
2.4 Estructuras de control .
.
.
.
.
.
.
.
.
if-else-elseif .
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
2
2
3
3
5
6
7
7
8
9
9
10
10
13
13
13
14
14
14
16
16
16
17
2.5 Funciones . .
.
2.6 Clases y Objetos
. .
.
.
.
.
.
. .
. .
.
.
.
.
. .
. .
.
.
. .
. .
.
.
.
.
. .
. .
.
.
. .
. .
.
.
.
.
. .
. .
.
.
. .
. .
3 Uso de LDAP en PHP
4 Coneccion con Bases de Datos Oracle
1 Introduccion
17
18
19
22
Es un lenguaje script que se usa principalmente dentro del HTML y se eje-
cuta en el servidor. En el servidor se puede ejecutar como modulo del web
server o como un script externo tal como perl por ejemplo. Ejemplo:
<html><head><title>Prueba</title></head>
<body>
<?php echo “hello world”; ?>
</body>
</html>
PHP puede hacer todo lo un CGI hacer dado que puede ser considerado
como un script CGI que se ejecuta en el servidor.
El fuerte de PHP son las bases de datos. PHP actualmente soporta: Oracle
(7 y 8), Sybase, Adabas D, Informix, dBase, mSQL, mySQL, Unix dbm,
etc.
PHP tambien soporta protocolos Internet tales como: IMAP, SNMP, NNTP,
POP3, HTTP, etc.
Con PHP se pueden crear socket de red.
2 Sintaxis
Hay 4 formas de escribir codigo PHP dentro de HTML:
1. <? echo ("this is the simplest, an SGML processing instruction\n"); ?>
2. <?php echo("if you want to serve XML documents, do like this\n");
?>
2
3. <script language="php">
echo ("some editors (like FrontPage) don’t like processing instruc-
tions");
</script>
4. <% echo ("You may optionally use ASP-style tags"); %>
<%= $variable; # This is a shortcut for "<%echo .." %>
La forma 2 es la mas usada. La primera debe ser habilitada desde la config-
uracion del web server (configure –enable-short-tags) al igual que la 4.
Todos los estamentos deben ser terminados en ;
Existen 3 tipos de comentarios: /* */ (de C) , // (de C++) y # (de unix shell).
2.1 Tipos de datos
Los tipos de dato de PHP son: array, floating point, integer, object y string. El
tipo de dato no es explicitamente escrito por el programador sino que en tiempo
de ejecucion PHP decide el tipo de dato que mas se ajusta al dato en uso. Sin
embargo tambien existe el casting en PHP:
$a = (double)$b;, $a = (int)$b;, $a = (real)$b;, $a = (string)$b;, $a = (object)$b;
Ejemplos:
Enteros: $a = 1234; (decimal), $a = 0x12; (hex equivale a 18 decimal)
Floating point (doubles): $a = 1.234;, $a = 1.2e3;
2.1.1 Strings
Existen 3 formas de crear strings en PHP.
$a = “Probando $b”;
En este caso las variables dentro del string seran expandidas a sus valores.
Se puede usar \ para poner caracteres especiales tales como \n, \r, \t, \\, \$,
\”, etc.
$a = ’Probando $b’;
En este caso las variables dentro del string no seran expandidas. Ademas
los unicos caracteres especiales que se tomaran en cuenta son \\ y \’.
3
$a = <<<EOD
Hola “$nombre”\n
EOD;
En este caso se expanden variables y no es necesarios usar \ para cada car-
acter especial. Esta forma se agrego en PHP4.
(gettype($a) en PHP se puede usar para obtener el tipo de dato de un variable).
Los strings en PHP se concatenan con un punto “.”. Los caracteres de un string
se pueden acceder con los indices del string en cuestion. A continuacion algunos
ejemplos:
<?php
/* Assigning a string. */
$str = "This is a string";
/* Appending to it. */
$str = $str . " with some more text";
/* Another way to append, includes an escaped newline. */
$str .= " and a newline at the end.\n";
/* This string will end up being ’<p>Number: 9</p>’ */
$num = 9;
$str = "<p>Number: $num</p>";
/* This one will be ’<p>Number: $num</p>’ */
$num = 9;
$str = ’<p>Number: $num</p>’;
/* Get the first character of a string */
$str = ’This is a test.’;
$first = $str[0];
/* Get the last character of a string. */
$str = ’This is still a test.’;
$last = $str[strlen($str)-1];
4
?>
Un string en PHP se puede evaluar y sus reglas para estos estan regidas por las
mismas que stdtod(3).
2.1.2 Arrays
Los arreglos se pueden crear con list(), array() o como en los siguientes ejemplos:
$a[0] = "abc"; $a[1] = "def"; $b["foo"] = 13;
$a[] = "hello"; // $a[2] == "hello"
$a[] = "world"; // $a[3] == "world"
Los arreglos se pueden ordenar usando: asort(), arsort(), ksort(), rsort(), sort(),
uasort(), usort(), y uksort() dependiendo en el orden que se desee. Se pueden
contar los elementos de un arreglo con count(). Se puede recorrer un arreglo
usando next(), prev() o each().
Ejemplo de arreglos multidimensionales:
$a["foo"][2] = $f; # (you can mix numeric and associative indices)
En PHP3 no es posible referenciar arreglos multidimensionales dentro de los
strings. Por ejemplo lo siguiente no funciona:
echo "This won’t work: $a[3][bar]";
Esto se arregla con concatenacion:
echo "This will work: " . $a[3][bar];
En PHP4 sin embargo se puede usar lo siguiente:
echo "This will work: {$a[3][bar]}";
Ejemplo de uso de array(). Las dos siguientes formas llevan al mismo array:
# Forma 1:
$a["color"] = "red";
$a["taste"] = "sweet";
$a["shape"] = "round";
$a["name"] = "apple";
$a[3] = 4;
# Forma 2:
$a = array(
"color" => "red",
"taste" => "sweet",
"shape" => "round",
"name" => "apple",
5
3 => 4 );
Para crear array multidimensionales array() se puede usar como sigue:
$a = array(
"apple" => array(
"color" => "red",
"taste" => "sweet",
"shape" => "round"
),
"orange" => array(
"color" => "orange",
"taste" => "tart",
"shape" => "round"
),
"banana" => array(
"color" => "yellow",
"taste" => "paste-y",
"shape" => "banana-shaped"
)
);
echo $a["apple"]["taste"]; # will output "sweet"
2.2 Variables
En PHP una variable se representa por un signo peso seguido por el nombre de la
variable.
En PHP3 las variables solo podian ser asignadas por valor. En PHP4 tambien
es posible la asignacion por referencia (lo que permite asignaciones mas rapidas).
La asignacion por referencia es como en C, ejemplo: $a = &$b.
PHP crea variables con el tipo de dato mas apropiado de acuerdo al valor
que se le asigne en un momento dado. El tipo de dato para una variable en PHP
puede cambiar durante el tiempo de ejecucion. Para saber el tipo de una variable
en un momento determinado se pueden usar las funciones: gettype(), is_long(),
is_double(), is_string(), is_array(), e is_object().
6
2.2.1 Variables predefinidas
Dado que PHP se puede ejecutar como modulo de un web server debe ser posi-
ble el acceso a algunas variables que maneja el web server. Estas variables pre-
definidas no son accesibles cuando se ejecuta php como script externo al web serv-
er. Se puede usar phpinfo() para obtener una lista de las variables predefinidas. A
continuacion una lista de las mas importantes variables predefinidas para Apache
web server:
SERVER_NAME: el nombre del servidor.
REQUEST_METHOD: GET, HEAD, POST o PUT.
QUERY_STRING: El string con los datos de un formulario.
HTTP_REFERER: La direccion de la pagina (si existe) desde la cual se
acceso la actual1.
HTTP_USER_AGENT: Contenido del campo User_Agent: del header del
requerimiento.
REMOTE_ADDR: La direccion IP desde la cual se acceso la pagina actual.
REMOTE_PORT: El puerto que esta siendo usado por el cliente para acce-
sar la pagina actual.
etc.
Tambien PHP crea automatica las variables argc y argv para los mismos propositos
que en C. PHP ademas crea otras variables como el array GLOBALS entre otras.
2.2.2 Alcance de variables
El alcance de las variables es como en la mayoria de los lenguajes script. Si algo
se declara en el nivel mayor del script entonces se supone global. En el siguiente
ejemplo, dentro del script b.inc tambien existira $a a menos que este script declare
$a tambien:
$a = 1;
include "b.inc";
1Esta variable es modificada por el browser y no todos los browsers lo soportan
7
En el siguiente ejemplo se muestra este caso:
$a = 1; /* global scope */
Function Test () {
echo $a; /* reference to local scope variable */
}
Test ();
Sin embargo dentro de una funcion se puede usar la palabra global para indicar
que las variables son las globales. En el siguiente script se imprimiria 3 al final:
$a = 1; $b = 2;
Function Sum () {
global $a, $b;
$b = $a + $b;
}
Sum ();
echo $b;
Lo anterior tambien es posible asi:
$a = 1; $b = 2;
Function Sum () {
$GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
}
Sum ();
echo $b;
Tambien es posible el uso de static (como en C) para que las variables locales
de una funcion mantengan sus
Comentarios de: Apuntes de PHP básico (0)
No hay comentarios