http://www.todopcsymas.foroactivo.com.es | Foro de informática e internet | version 1. beta
Regístrate en todopcsymas para acceder a todo el contenido


Todopcsymas foro de informática a internet | Nueva generación de informáticos | Contamos con los mejores programadores, diseñadores e informáticos del momento | Tutoriales, programas, consejos, noticias, actualidad, programación y mucho más.. 100 % legal
 
ÍndicePortalCalendarioFAQMiembrosGrupos de UsuariosRegistrarseConectarse
Últimos temas
» Tutorial - instalar foro phpbb3 completamente desde 0
Mar Mar 17, 2009 10:15 pm por j.garcia2

» Firefox 3.0.7 , actualizacion de seguridad y estabilidad
Mar Mar 17, 2009 6:09 am por deimy

» Tutorial de creación de páginas web con Dreamweaver CS3
Lun Mar 16, 2009 8:29 pm por j.garcia2

» Tutorial - 99 formas de acelerar un ordenador
Lun Mar 16, 2009 8:24 pm por j.garcia2

» ¿Que debes hacer para afiliarte a todopcsymas?
Lun Mar 16, 2009 8:02 pm por j.garcia2

» Muy buenas a todos
Lun Mar 16, 2009 7:54 pm por j.garcia2

» Damos puestos de moderador
Lun Mar 16, 2009 5:47 pm por j.garcia2

» Vulnerabilidades en Google Chrome (IV)
Dom Mar 15, 2009 2:34 pm por j.garcia2

» Vulnerabilidades en Google Chrome (III)
Dom Mar 15, 2009 2:33 pm por j.garcia2

» Vulnerabilidades en Google Chrome (II)
Dom Mar 15, 2009 2:31 pm por j.garcia2

» Vulnerabilidades en Google Chrome (I)
Dom Mar 15, 2009 2:30 pm por j.garcia2

» Mi Foro de bichos
Dom Mar 15, 2009 2:22 pm por j.garcia2

» Mas de 100 links de utilidad
Dom Mar 15, 2009 4:23 am por j.garcia2

» Windows live messenger 2009
Dom Mar 15, 2009 4:15 am por j.garcia2

» Creador de nicks
Dom Mar 15, 2009 4:12 am por j.garcia2

» Winamp portable
Dom Mar 15, 2009 3:52 am por j.garcia2

» FIreworks portable muy bueno ;)
Dom Mar 15, 2009 3:50 am por j.garcia2

» ¿Que es visual basic o para que sirve?
Dom Mar 15, 2009 3:26 am por j.garcia2

» Tutoriales c++ gracias a linkgl
Dom Mar 15, 2009 3:25 am por j.garcia2

» C ++ [INTRODUCCION]
Dom Mar 15, 2009 3:23 am por j.garcia2

¿Quién está en línea?
En total hay 3 usuarios en línea: 0 Registrados, 0 Ocultos y 3 Invitados

Ninguno

La mayor cantidad de usuarios en línea fue 41 el Miér Ene 15, 2014 1:51 pm.
Estadísticas
Tenemos 432 miembros registrados.
El último usuario registrado es deimy

Nuestros miembros han publicado un total de 1803 mensajes en 623 argumentos.
Mejores posteadores
j.garcia2
 
Cristhian
 
Lana
 
pabluc
 
meson21
 
chema93mx
 
petropuchas
 
davidamc
 
ignacio34
 
Gaston
 
Palabras claves
Conectarse
Nombre de Usuario:
Contraseña:
Entrar automáticamente en cada visita: 
:: Recuperar mi contraseña
Buscar
 
 

Resultados por:
 
Rechercher Búsqueda avanzada
Sondeo
Noviembre 2018
LunMarMiérJueVieSábDom
   1234
567891011
12131415161718
19202122232425
2627282930  
CalendarioCalendario

Comparte | 
 

 Introducción al PHP y a las librerías

Ir abajo 
AutorMensaje
j.garcia2
Admin
Admin
avatar

Cantidad de envíos : 742
Edad : 28
Localización : Madrid - España
Puntos : 9
Reputación : 0
Fecha de inscripción : 04/06/2008

MensajeTema: Introducción al PHP y a las librerías   Dom Jul 06, 2008 4:45 pm

PHP es un lenguaje interpretado que sirve principalmente para realizar
páginas html dinámicas, aunque sus autores aseguran emplearlo incluso
para hacer shell-scripts, ya que hay intérpetes php en línea de
comandos.

A pesar del ímpetu de sus desarrolladores, aquí nos
centraremos especialmente en la generación de páginas dinámicas con php
(versión 3), apache y el módulo mod_php.

PHP es muy parecido al C, si ya sabes C, se puede decir que ya sabes el 90% del lenguaje PHP, únicamente se diferencian en que:

* PHP no es case sensitive (no distingue mayúsculas de minúsculas), salvo bugs en el tratamiento de objetos.

* en PHP no se declaran las variables y no tienen un tipo fijo, sino
que una misma variable puede almacenar a lo largo de su vida valores de
todo tipo (números, cadenas...).

1.1 PHP y HTML

Para escribir código PHP dentro de una página html, tenemos varias alternativas:

* Incluir el código entre
* Incluir el código entre
* Incluir el código entre bloques y

El resultado de la salida estándar de ese código será escrito en esa misma posición de la página html.

Ejemplo:



echo("¡Hola Mundo!
");
?>




La
página anterior, si la salvamos como ejemplo.phtml y la cargamos con el
navegador, produce como resultado una página HTML con el texto "Hola
Mundo". Huelga decir que para que funcione, es necesario tener
instalado un servidor web con soporte para PHP y asociar la
interpretación de PHP a la extensión phtml.

En el proyecto web
de Bulma tienes información de cómo instalar todo ello, incluyendo el
código fuente del web, los datos de la base de datos y scripts para la
instalación del web de bulma en cualquier ordenador.

En los sucesivos ejemplos, obviaremos las marcas , HTML y BODY
1.2 Comentarios

Los comentarios en PHP se escriben:

* Con // o # para comentarios de una sóla línea.
* Entre /* y */ para comentarios de una o más líneas.

Ejemplo:

/* Título: Mi Primera página PHP
Autor: Yo
*/

// Saludamos
echo("¡Hola Mundo!
");


Produce la misma salida que el ejemplo anterior.

1.3 Variables

Todas las variables en PHP empiezan con el caracter dólar "$".

Declaración

Las variables se declaran simplemente inicializándolas:

$strCadena = "Hola Mundo";
echo($strCadena);


Si intentamos acceder a una variable no inicializada, PHP se quejará. Para evitar ello, existe la función error_reporting(mask).

Tipos

Los
tipos básicos de PHP son Integer, Double, String, Array y Object. Las
variables booleanas no existen como tales, sino que cualquier valor
numérico distinto de 0 o cualquier cadena no vacía se considera TRUE

Las
variables PHP no tienen un tipo fijo, dependiendo de la última
asignación realizada, tienen uno u otro tipo. La función
gettype(nombrevar) permite obtener el tipo de esa variable en forma de
cadena:

$variable = "Una cadena";
echo(gettype($variable));
$variable = 0;
echo(gettype($variable));


El ejemplo anterior escribe "String" e "Integer" por pantalla.

Las
funciones Is_Double($varname), Is_Array($varname), Is_String($varname)
y Is_Object($varname) también nos permiten saber el tipo de una
variable.

Cadenas

Las cadenas en PHP se especifican rodeadas por comillas simples o por comillas dobles:

$strCadena1 = "Hola Mundo
";
echo($strCadena1);
$strCadena2 = 'Hola Inmundo
';
echo($strCadena2);


Hay un matiz de diferencia entre una y otra, que podemos comprobar con este ejemplo:

$strMessage = "Hola Mundo";
$strMsgInABottle = "$strMessage
";
echo($strMsgInABottle);
$strMsgInABottle = '$strMessage
';
echo($strMsgInABottle);


Produce una página con el texto

Hola mundo
$strMessage


Es
decir, cuando usamos comillas dobles, las expresiones del estilo
$varname se sustituyen por el valor de la variable $varname, mientras
que cuando usamos comillas simples, la cadena no se evalúa y se deja
como está.

El operador para concatenar cadenas es el punto ".":

$strCadena = "Hola";
$strCadena = $strCadena . "Mundo";
echo($strCadena);


Las comillas pueden abarcar más de una línea sin ningún problema:

$strConsulta = '
SELECT *
FROM
bul_tbl_noticias
WHERE
nombre_autor = 'Alberto';
';


Como
vemos, podemos escapar las comillas con la combinación '. De la misma
manera, n, t y otros tienen el mismo significado que en C.

Arrays

Los arrays en PHP son bastante potentes y flexibles:

$arrValores[0] = 1;
$arrValores[1] = "Una cadena";
echo("En $arrValores[0] está $arrValores[0] y en " .
"$arrValores[1] está $arrValores[1]
");


El
no poner el subíndice del elemento, hace que el valor asignado se
asigne a las siguiente posición libre del array. Los arrays en PHP
comienzan en la posición 0, por lo que el anterior código podría
escribirse más fácilmente así:

$arrValores[] = 1;
$arrValores[] = "Una cadena";
echo("En $arrValores[0] está $arrValores[0] y en " .
"$arrValores[1] está $arrValores[1]
");


Otra forma de crear arrays es mediante la construcción Array():

$arrValores = Array(1, "Una cadena");
echo("En $arrValores[0] está $arrValores[0] y en " .
"$arrValores[1] está $arrValores[1]
");


Una
forma muy conveniente de direccionar elementos de un array es
asociativamente. En el caso de los arrays asociativos, en vez de
accederse por índice, se accede por clave o key (las * sí son case
sensitive, no es lo mismo $arrValores["a"] que $arrValores["A"], no es
lo mismo):

$arrValores["nombre"] = "Tancredo";
$arrValores["Apellidos"] = array("Gómez", "Jiménez");
echo("En $arrValores["nombre"] está $arrValores[nombre] y " .
"en $arrValores["Apellidos"] está " .
$arrValores["Apellidos"][0] . " y " .
$arrValores[Apellidos][1] . "
");
Volver arriba Ir abajo
Ver perfil de usuario
j.garcia2
Admin
Admin
avatar

Cantidad de envíos : 742
Edad : 28
Localización : Madrid - España
Puntos : 9
Reputación : 0
Fecha de inscripción : 04/06/2008

MensajeTema: Re: Introducción al PHP y a las librerías   Dom Jul 06, 2008 4:46 pm

Como vemos, manejar arrays multidimensionales es trivial en PHP, basta con añadir los corchetes y el subíndice deseado.

La construcción Array() también puede usarse con arrays asociativos:

$arrValores=array(
"nombre" => "Tancredo",
"Apellidos" => array("Gómez", "Jiménez")
);


La construcción List() nos permite asignar los valores de un array a una serie de variables de una sola vez:

$arrValores=Array(1, "Una cadena", 1.2);
List($nNumber, $strCadena, $fNumber) = $arrValores;
echo("$nNumber vale $nNumber, $strCadena vale " .
"'$strCadena' y $fNumber vale $fNumber");


saca como resultado:

$nNumber vale 1, $strCadena vale 'Una cadena' y $fNumber vale 1.2


Conversiones

Para convertir una variable de un tipo a otro se emplea el casting mediante paréntesis:

$strVariable = "5";
$valor = (integer) $strVariable;


$valor contiene el valor numérico de la variable $strVariable.

También podemos emplear la función SetType($varname, "vartype") para forzar que la variable $varname sea del tipo vartype.

De
todas formas, PHP es bastante consecuente en cuanto a los tipos, de
manera que si sumamos un número a una cadena, esa cadena se convierte
en un número:

$strCadena="5";
echo('$strCadena es de tipo ' . GetType($strCadena) .
" y vale $strCadena
");
$strCadena = $strCadena + 5;
echo('$strCadena es de tipo ' . GetType($strCadena) .
" y vale $strCadena
");


produce como resultado

$strCadena es de tipo string y vale 5
$strCadena es de tipo integer y vale 10


En caso de que concatenemos una cadena con un número, PHP realiza la conversión del número a cadena automáticamente:

echo("El número es " . 5 . "
");


Produce la salida esperada

El número es 5


Variables predeclaradas HTTP

PHP tiene toda una serie de variables predeclaradas que tienen que ver con HTML, como:

* $PHP_AUTH_USER: Usuario de la autenticación.
* $PHP_AUTH_TYPE: Tipo de autorización.
* $PHP_AUTH_PW: * con la que se autenticó el usuario.
* $HTTP_POST_VARS: Array con las variables de un form pasadas por el método POST.
* $HTTP_PUT_VARS: Array con las variables de un form pasadas por el método PUT.

Aparte
de los arrays $HTTP_PUT_VARS y $HTTP_POST_VARS, podemos acceder a las
variables provenientes de forms HTML como $nombrevariable, supongamos
el siguiente form:













Mientras que en la página tratar_form.phtml podemos acceder a las variables del form con:

Echo("Nombre: $Nombre

Apellido1: $Apellido[0]

Apellido2: $Apellido[1]

");


Comprobación de declaración

En
ocasiones es necesario saber si una variable ha sido inicializada ya
(sobre todo si proviene de un form html, por ejemplo), para ello
tenemos la función IsSet($variable) que nos permite saber si esa
variable fue ya inicializada.

Esta función debe ser usada
conjuntamente con un error_reporting(~Cool para que el intérprete no
capture el error de intento de acceso a variable no inicializada.

1.4 Constantes

Las constantes en PHP son literales que no comienzan por "$" y que se inicializan con la construcción define(nomconst):

define("MAX_CLIENTS", 25);
Echo(MAX_CLIENTS);


Las constantes predefinidas __FILE__ y __LINE__ nos dan el nombre del fichero y el número de línea actual.

1.5 Operaciones

booleanas, concatenación de cadenas, aritméticas.

1.6 Sentencias de control

Las estructuras de control de PHP son iguales que las de C, con algún que otro añadido.
Condicionales

La estructura de los condicionales es igual que en C:

if ($usuario == "Wildfred") {

} elseif ($usuario == "Winifred") {

} else {

}


Switch

switch ($usuario) {
case "Wildfred":
break;
case "Winifred":
break;
default:
}


La expresión de selección de rama del case tiene que ser escalar (no objeto o array).
Bucles

En
los bucles pueden usarse las instrucciones break y continue para salir
del bucle actual o para avanzar hasta la próxima iteración.

For

for ($i=0;i<40;i++) {
Echo("$i vale $i
");
}


While

$bDoExit = 0;
while (!$bDoExit) {
Echo("Iterando
");
$bDoExit = 1;
}
do {
Echo("Iterando
");
$bDoExit = 1;
} while (!$bDoExit);


list, Each (arrays)

Existen dos funciones que combinadas nos permiten iterar fácilmente por todos los elementos de un array:

$arrApellidos = array("Pepe" => "Pérez", "Paco" => "Gómez");
while ( list($strNombre, $strApellidos) = each($arrApellidos)) {
Echo("$strNombre se apellida $strApellidos.
");
}


Todos
los arrays mantienen un contador interno (accesible mediante las
funciones current, reset, next y prev, y la función each se encarga de
devolver current y llamar a next. Con la función list asignamos la
clave y el elemento a las variables $strNombre $strApellidos, hasta que
no queda ningún elemento (each devuelve null).
Volver arriba Ir abajo
Ver perfil de usuario
j.garcia2
Admin
Admin
avatar

Cantidad de envíos : 742
Edad : 28
Localización : Madrid - España
Puntos : 9
Reputación : 0
Fecha de inscripción : 04/06/2008

MensajeTema: Re: Introducción al PHP y a las librerías   Dom Jul 06, 2008 4:46 pm

Array_Walk

Array_Walk es una función que toma como parámetros un array y una función y aplica esa función a cada elemento del array:

function dumpit($elem) {
Echo("$elem
");
}
$arr = array("Elem1", "Elem2", "Elem3");
Array_Walk($arr,"dumpit");


1.7 Funciones

Declaración

Un esqueleto típico de una función es:

function outputcol($strCadena, $strColor) {
// Saca una cadena con el color deseado
Echo("$strCadena");
}


Y se llama con:

outputcol("Rojo", "FF0000");
outputcol("Verde", "00FF00");


Dando el resultado:

Rojo
Verde


Parámetros

Parámetros por defecto

Si deseamos que la función por defecto ponga el texto en color azul, por ejemplo, la redefiniríamos de la siguiente manera:

function outputcol($strCadena, $strColor="0000FF") {
// Saca una cadena con el color deseado
Echo("$strCadena");
}


y la podríamos llamar con:

outputcol("Defecto");
outputcol("Verde", "00FF00");


Dando el resultado:

Defecto
Verde


Evidentemente, siempre que una función tenga n parámetros por defecto, éstos deberán ser los n últimos parámetros declarados.

Parámetros por referencia

En
PHP por defecto los parámetros se pasan por valor, es decir, que si los
modificamos dentro de la función, a la vuelta de la función las
variables pasadas como parámetro no se modificaron (a dichas variables
se les denomina parámetros actuales de la función).

Si deseamos
que las variables del llamante sean modificadas (los mencionados
parámetros actuales), hay que pasar los parámetros por referencia:

function Concatena(&$strDest, $strSrc) {
// Esta función concatena dos cadenas y las devuelve
// en la primera cadena pasada
// $strDest se le pasa como parámetro por referencia.
$strDest = $strDest . $strSrc;
// Como $strSrc no se pasa por referencia, la siguiente
// instrucción no afecta al parámetro actual
$strSrc = "";
}
$strOrigen = "Mundo";
$strDestino = "Hola ";
Echo("Origen es $strOrigen y destino es $strDestino
");
Concatena($strDestino, $strOrigen);
Echo("Origen es $strOrigen y destino es $strDestino
");


Que ofrece el resultado:

Origen es Mundo y destino es Hola
Origen es Mundo y destino es Hola Mundo


Como
se ve, para pasar un parámetro por referencia, basta con poner "&"
delante del nombre del parámetro en la declaración de la función, es
decir, poner "&" delante del nombre del parámetro formal.

También
se puede pasar un parámetro por referencia aunque en la función no esté
declarado como tal, anteponiendo el ampersand "&" al parámetro
actual (al invocar la función).

Variables en funciones

Variables locales

Para definir una variable local, simplemente se asigna un valor a la variable:

function Iva($fValue) {
// $fIVA es una variable local
$fIVA = $fValue * 0.16;
Echo("El IVA de $fValue es $fIVA
");
}
Iva(2350);


Variables estáticas

Si queremos que la variable local conserve el valor de invocación a invocación de la función, basta declararla como estática:

function Counter() {
static $count = 0;
$count2 = 0;
$count2++;
Echo("Count vale $count y count2 vale $count2
");
$count++;
}
Counter();
Counter();
Counter();


muestra en la página:

Count vale 0 y count2 vale 1
Count vale 1 y count2 vale 1
Count vale 2 y count2 vale 1


La inicialización de la variable sólo tiene lugar la primera vez que Counter es invocada.

Acceso a variables globales

Este
es uno de los puntos en los que PHP se diferencia de C y es un punto
importante y causa de bastantes quebraderos de cabeza para el primerizo
en PHP.

Para acceder a una variable global desde dentro de una
función es imprescindible declararla dentro de la función como global
$variable, ya que de otro modo PHP pensará que se desea hacer
referencia a una variable local:

function TouchGlobal() {
global $strCadena;
$strCadena = "¡Tocada!";
$nValue = 7;

Echo("Dentro de TouchGlobal ahora $strCadena vale " .
$strCadena " . "y $nValue vale $nValue
");
}
$strCadena = "Hola mundo";
$nValue = 4;
Echo("$strCadena vale $strCadena y $nValue vale $nValue
");
TouchGlobal();
Echo("$strCadena ahora vale $strCadena y $nValue sigue ".
"valiendo $nValue
");


Como
se ve, no es necesario que la variable global esté en el fichero
físicamente delante de la función, basta con que haya sido inicializada
antes de llamar a la función. Los cambios realizados a una variable
global dentro de una función, permanecen cuando se vuelve de la función.

Otra forma de acceder a las variables globales es mediante una indexación asociativa del array $GLOBALS.

Devolución de un valor

Para devolver un valor se emplea la cláusula return.

function Factorial($nValue) {
if ($nValue <= 1) {
return 1;
} else {
return Factorial($nValue-1)*$nValue;
}
}
$nNumber = 7;
Echo("El factorial de $nNumber es " . Factorial($nNumber));


En
PHP las funciones pueden llamarse a sí mismas (recursivas), e incluso
se pueden declarar funciones dentro de funciones o clases dentro de
funciones.
Volver arriba Ir abajo
Ver perfil de usuario
Contenido patrocinado




MensajeTema: Re: Introducción al PHP y a las librerías   

Volver arriba Ir abajo
 
Introducción al PHP y a las librerías
Volver arriba 
Página 1 de 1.
 Temas similares
-
» Como hago que mi introduccion aparesca en el indice
» Como se pone una breve introducción en los apartados?
» ¿Cómo puedo hacer una introducción en mi foro que contenga una sola imagen?
» Capturar la fecha de un calendario emergente
» libreria y materiales

Permisos de este foro:No puedes responder a temas en este foro.
http://www.todopcsymas.foroactivo.com.es | Foro de informática e internet | version 1. beta :: Problemas de pc - consejos :: Programación-
Cambiar a: