Hola Visitante

Autor Tema: Programacición en PHP  (Leído 1611 veces)

Berni69

  • Administrator
  • *****
  • Mensajes: 25
    • Ver Perfil
Programacición en PHP
« en: Agosto 03, 2011, 06:43:57 pm »
Buenas hoy voy a empezar un curso de php para noobs como yo, para empezar me gustaría recalcar que php es un lenguaje de programación interpretado, no hay que compilarlo, es decir, los errores de programación nos saldrán cuando ejecutemos el programa en el servidor.


En php todas las sentencias deben terminar obligatoriamente con ; , si no ya lo veremos mas adelante. Las llaves, {}, significan un subconjunto de operaciones dentro de uno mayor  o el inicio y el fin de una determinada seccion de codigo.

Lo primero que os voy a explicar es que en PHP las variables no hay que declararlas al principio pueden declararse cuando se van a usar. En programación, las variables son estructuras de datos que, como su nombre indica, pueden cambiar de contenido a lo largo de la ejecución de un programa. Una variable corresponde a un área reservada en la memoria principal del ordenador pudiendo ser de longitud fija o variable

En php a diferencia de los otros lenguajes de programación, las variables no tienen tipo, es decir pueden guardar tanto un int como un array de caracteres. Las variables se designan con el símbolo del $ :
Código: (php) [Seleccionar]

$a=1;


Hay varias operaciones definidas que se pueden hacer con las variables:

Asignación: Dar un valor a una variable:
Código: (php) [Seleccionar]

$a=1;

Operaciones aritméticas: Suma, Resta, Multiplicación, División, Módulo(o resto, reminder), Incremento y Decremento
Código: (php) [Seleccionar]

$suma=$a+$b;
$resta=$a-$b;
$mult=$a*$b;
$div=$a/$b;
$mod=$a%$b;
$a++; //Suma a $a 1
$a--; //Decrementa a $a en una unidad

En el código aparecen unos carácteres especiales como pueden ser las // esto significa que es un fragmento de texto que el servidor web va a ignorar, a este tipo de texto se denomina comentario, muy útiles para poner notas sobre el código ayudando a su legibilidad. Este tipo de comentario tiene validez hasta el salto de linea.

Otro tipo de comentarios son los multilínea que obligatoriamente empiezan por /* y se cierran con */
Código: (php) [Seleccionar]

/* hola mi nombre es \"ELNENGG\" y
le voy a asignar uno a la variable a */
$a=1;


Otro tipo de operaciones que podemos hacer en php son las de comparación, en  este caso el anillo de operaciones del que disponemos es: Mayor, mayor o igual, igual, menor o igual, menor y distinto. Estas operaciones devuelven True o False dependiendo del resultado de la operacion:
   
Código: (php) [Seleccionar]

   $a == $b  //igual
   $a != $b  //distinto
   $a < $b //menor que
   $a > $b //mayor
   $a >= $c //mayor o igual
   $b <= $c  //menor o igual



Tambien existen operaciones lógicas o boolenas que tambien devuelven true o false dependiendo de la condicion:
Operador   Definición
&&            Devuelve verdadero cuando ambas condiciones se cumplen
and        Devuelve verdadero cuando ambas condiciones son verdaderas.
||       Devuelve verdadero cuando al menos una de las dos es verdadera.
or        Devuelve verdadero cuando al menos una de las dos es verdadera.
!        Niega el valor de la expresión.

Código: (php) [Seleccionar]
$result=($a == $b) && ($c > $b); 
 $result=($a == $b) || ($b == $c);   
 $result=!($b <= $c);




Un tipo astante especial de variable son los string, cadenas de carácteres, para hacer la asignación de estas variables se usan las \"\" o las '' dependiendo del resultado que queramos. Ahora a simple vista no lo veremos pero cuando tengamos más practica veremos las diferencias.

Código: (php) [Seleccionar]
$a=\"Hello world\";
$a='Hello world\";


En este caso son lo mismo, pero en el caso de tener variables dentro de la asignación dependerá de lo que queramos hacer para decidir si usar una u otras.

Para empezar a hacer nuestro primer programa empezaremos por el típico hello world. Todos los scripts php deben empezar por   y finalizar por ?>. Para imprimir algo en el archivo fuente de nuestra web, se utiliza la funcion echo(string $text), es decir que todo lo que le pasemos por parámetro se convertira a string (cadena de caracteres) y lo mostrara por pantalla:
Código: (php) [Seleccionar]


     
     
     
                                          echo $a;
                ?>
     



Esto debería sacar una salida por pantalla como la siguiente:
Hello world



Berni69

  • Administrator
  • *****
  • Mensajes: 25
    • Ver Perfil
Re:Programacición en PHP
« Respuesta #1 en: Agosto 04, 2011, 11:03:58 am »
Estructuras de control en PHP, hay varias estructuras útiles como se dan en C y otros lenguajes de programación, empecemos por los \"if/elseif/else\". En este caso se entrará en la intrucción o conjunto de instrucciones si la condicion que contiene el if sea verdadera sino saltara a la siguiente linea:

Código: (php) [Seleccionar]
if ($a > $b) {
    echo \"a es mayor que b\";
} elseif ($a == $b) {
    echo \"a es igual que b\";
} else {
    echo \"a es menor que b\";
}
?>


Nótese que si $a>$b ya no hara la comparación $a==$b esto no ocurrirá así si lo programamos de la siguiente forma:

Código: (php) [Seleccionar]
if ($a > $b) {
    echo \"a es mayor que b\";
}
if ($a == $b) {
    echo \"a es igual que b\";
}
if($a<$b) {
    echo \"a es menor que b\";
}
?>


En este caso si tanto si $a es mayor que $b como si no pasara a la siguiente igualdad , de modo similar ocurrira con el $a==$b asi que se evaluaran las tres condiciones siempre.

Berni69

  • Administrator
  • *****
  • Mensajes: 25
    • Ver Perfil
Re:Programacición en PHP
« Respuesta #2 en: Agosto 04, 2011, 08:09:34 pm »
El otro gran tipo de estructuras de control son los bucles, en php hay 4 tipos de bucle, el bucle while, el bucle do-while, for y foreach.

Empecemos por el bucle while, evalua la condicion y repetirá el proceso hasta que esa condicion pase a ser falsa:
Código: (php) [Seleccionar]
$i=0;
while($i<10){
echo $i;
$i++;
}

Este es un típico ejemplo que se utiliza con los bucles for ya que conoces exactamente el número de veces que se repetirá el proceso, sin embargo es perfecto para realizar búsquedas en arrays ya sean strings o otro tipo de colección.
Ejemplo de busqueda, buscaremos el carácter y de la frase \"Hola soy berni\"
Código: (php) [Seleccionar]

$encontrado=false;
$str=\"Hola soy berni\";
$indice=0;
while($encontrado==false && $indice {
 $encontrado=$str[$indice]=='y';
 $indice++;
}


Saldrá del bucle cuando tenga y o haya llegado al final de la oración.
 

Bucle for, habitualmente se utuliza cuando sabemos el número de repeticiones que se van a hacer, consta de 3 campos: inicialización, comparación y actualización. El bucle se repetirá hasta que la comparación se cumple:
Código: (php) [Seleccionar]

for($i=0;$i<10;$i++){
echo $i;
}


Este código es equivalente al primero del while.

El bucle do-while, se diferencia del while en el lugar que se hace la comparación para saber si se repetirá en el bucle se hace al final del jugo de intrucciones es decir, el código como mínimo se ejecutará una vez.
Este sería el código equivalente al anterior:
Código: (php) [Seleccionar]

$i=0;
do{
   echo $i;
}while($i<9);


bucle foreach php como este nunca se me ha dado bien he sacado la información de:
http://php.net/manual/es/control-structures.foreach.php

PHP 4 introdujo un constructor foreach, muy parecido al de Perl y algunos otros lenguajes. Simplemente da un modo fácil de iterar sobre arrays. foreach sólo trabaja sólo sobre arrays y resultará en un error al intentar usarlo en una variable con un diferente tipo de datos o una variable no inicializada. Hay dos sintaxis; la segunda es una extensión menor, pero útil de la primera:
Código: (php) [Seleccionar]
foreach (array_expression as $value)
    sentencias
foreach (array_expression as $key => $value)
    sentencias


A partir de PHP 5, se pueden modificar fácilmente elementos del array al preceder $value con &. Esto asignará una referencia en lugar de copiar el valor.
Código: (php) [Seleccionar]
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr ahora es array(2, 4, 6, 8)
unset($value); // rompe la referencia con el último elemento
?>