Cómo leer en un archivo .txt una línea al azar o aleatoria con PHP utilizando rand y count

Si tenemos un archivo .txt podemos leer gracias a PHP una línea aleatoria del mismo.

Imaginemos que tenemos el siguiente archivo 1.txt:

1,primera
2,segunda
3,tercera
4,cuarta
5,quinta
6,sexta
7,septima

Para leer una línea al azar de este .txt podemos crear el siguiente .php:

$contenido = file("1.txt");
$linea_azar = $contenido[rand(0, count($contenido) - 1)];
echo $linea_azar;

Con esto ya podríamos leer las filas del archivo 1.txt al azar.

Case Sensitivy en PHP

En PHP las variables son Case-sensitive, es decir, la variable que se defina tendrá que escribirse exactamente igual para poder llamarla.

<?php
$musica="blues";
echo "Me gusta escuchar " . $musica . "<br>";
echo "Ayer escuché " . $MUSICA . "<br>";
echo "Mañana iré a un concierto de " . $MuSiCa . "<br>";
?>

En PHP las funciones definidas, clases y keywords como por ejemplo for, do, if, else, print, echo, etc son Case-insensitive.

<?php
echo "Echo con minúsculas: echo<br>";
EcHo "Echo con mayúsculas y minúsculas: EcHo<br>";
ECHO "Echo con mayúsculas: ECHO<br>";
?>

Variables locales y globales en PHP5

Leyendo diferente documentación podemos ver que tenemos variables globales y locales. Las globales se declaran fuera de una función y tiene aplicación en cualquier lugar fuera de una función. Las variables locales se declaran dentro de una función y sólo tienen actividad dentro de esa función.

Podemos ver el siguiente ejemplo:

<?php
$a=15; // variable global
function prueba()
{
$b=74; // variable global
echo "Dentro de la función la variable a tiene un valor de $a y la variable b tiene un valor de $b";
}
prueba();
echo "<br>";
echo "Fuera de la función la variable a tiene un valor de $a y la variable b tiene un valor de $b";
?>

como vemos en el resultado:

Dentro de la función la variable a tiene un valor de y la variable b tiene un valor de 74

Fuera de la función la variable a tiene un valor de 15 y la variable b tiene un valor de

En resumen, la variable global no actúa dentro de una función y la variable local no actúa fuera de la función donde fue declarada.

Para conseguir que una variable global actúe dentro de una función hay que declararla en la función precedida de global o bien llamarla así: $GLOBALS[‘variable’]. Al hacer esto estas variables actúan de forma global y en la función en la que hemos declarado que es global. Esto lo podemos ver en los siguientes ejemplos:

Con global:

<?php
$a=15; // variable global
$b=74; // variable global
function prueba2()
{
global $a,$b;
$b=$a+$b;
}
prueba2();
echo $b; // obtenemos 89
?>

Con $GLOBALS[‘variable’]:

<?php
$a=15; // variable global
$b=74; // variable global
function prueba3()
{
$GLOBALS['b']=$GLOBALS['a']+$GLOBALS['b'];
}
prueba3();
echo $b; // obtenemos 89
?>

Cómo bloquear todo el sitio web mediante robots.txt

Si no queremos que los motores de busqueda como Google indexen nuestro sitio web porque por ejemplo estamos en la fase beta de un proyecto podemos modificar el archivo robots.txt que se encuentra en la raíz del sitio web o crearlo poniendo lo siguiente:

User-agent: *
Disallow: /

Con esto todo nuestro sitio web está bloqueado.

Comprobar si existe un archivo con PHP

Si queremos saber si existe un determinado archivo en el servidor podemos utilizar la función file_exists() de PHP. Por ejemplo, si queremos comprobar si existe archivo.php y si existe escribimos “El archivo existe” y si no “El archivo no existe”:

if (file_exists("archivo.php")){
   echo "El archivo existe";
}else{
   echo "El archivo no existe";
}

Cómo obtener el último valor de un array en PHP

Si queremos obtener el último valor de un array en PHP podemos utilizar la funcion end().

Por ejemplo, si tenemos el siguiente array:

<?php
$frag = array(
'num' => array(
                   '1' => '1',
                   '2' => '2',
                   '3' => '3'
                   )
 );
?>

Si queremos mostrar el último valor podemos utilizar la funcion end() de la siguiente forma:

<?php
$ultimo = end( $frag['num'] );
echo $ultimo;
?>

Lo cual nos dará como resultado: 3

Formulario PHP para cargar datos en la misma página

Si queremos crear un formulario en PHP donde se carguen los datos en la misma página podemos utilizar lo siguiente:

<?php

if(isset($_POST['submit']))

{

$name = $_POST['name'];

echo "User Has submitted the form and entered this name : <b> $name </b>";

echo "<br>You can use the following form again to enter a new name.";

}

?>

<form method="post" action="<?php echo $_SERVER['PHP_SELF']; ?>">

<input type="text" name="name"><br>

<input type="submit" name="submit" value="Submit Form"><br>

</form>

Para más información:

http://www.html-form-guide.com/php-form/php-form-action-self.html