Obtener la URL que se esta visitando con PHP
Con esta función, se puede saber la URL que se está visitando… y no hay nada más que decir, sólo la función y un ejemplo.
function selfURL(){
$s = empty($_SERVER["HTTPS"]) ? '' : ($_SERVER["HTTPS"] == "on") ? "s" : "";
$protocol = strleft(strtolower($_SERVER["SERVER_PROTOCOL"]), "/").$s;
$port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]);
return $protocol."://".$_SERVER['SERVER_NAME'].$port.$_SERVER['REQUEST_URI'];
}
function strleft($s1, $s2){
return substr($s1, 0, strpos($s1, $s2));
}
En realidad son dos, pero van juntas. Y para usarla es bastante sencillo.
echo selfURL(); /* http://www.emm-gfx.net/2010/02/obtener-la-url-que-se-esta-visitando-con-php/ */
Puede no parecer demasiado util, pero a mi me ha venido bien varias veces.
Comprobar DNI / NIF con PHP
Esta función es capaz de comprobar si el NIF tiene un formato correcto o no, es decir, si la letra indicada es la que corresponde a la cadena de 8 números. Que devuelva un resultado positivo no quiere decir que sea un número que exista, sólo que el formato es correcto.
Seguir leyendo y ver ó escribir comentarios →
Comprobar la validez de un dominio con PHP
Una sencilla función para verificar que un nombre de dominio existe. Es la función que utilizo en saberpagerank.es para verificar que el dominio introducido es correcto, podéis encontrar una demostración de allí.
function getAddrByHost($host, $timeout = 3) {
$query = `nslookup -timeout=$timeout -retry=1 $host`;
if(preg_match('/\nAddress: (.*)\n/', $query, $matches)){
return trim($matches[1]);
}else{
return false;
}
return $host;
}
Y no hay mucho más que añadir, el nombre de dominio se le pasa en el primer parámetro, es decir, para utilizar la función se haría algo así:
if(!getAddrByHost('www.dominioabsurdo.lol')){
die('El dominio parece incorrecto :(');
}
Recursividad en mkdir de PHP
No en todas las versiones de PHP se puede hacer un mkdir recursivo directamente, mkdir('/1/2/3/'); aunque es lo ideal, en versiones antiguas (la opción se añadió en la 5.0) no se podía. Si en tu servidor hay instalada una versión vieja de PHP y no tienes la posibilidad de actualizarlo tu mismo, puedes utilizar una función propia que haga el mkdir recursivo. En el manual oficial de php se explica a fondo como utilizar correctamente la función oficial, con los permisos y recursividad que se necesiten.
Como por ejemplo:
function mkdir_recursivo($pathname, $mode){
umask(0);
is_dir(dirname($pathname)) || mkdir_recursive(dirname($pathname), $mode);
return is_dir($pathname) || mkdir($pathname, $mode);
}
Un ejemplo de uso de esta función sería:
$ruta = 'carpeta/subcarpeta/subsubcarpeta/';
mkdir_recursivo($ruta,0777);
Donde 0777 hay que poner los permisos que se quieran (con el 0 delante).
En cualquier caso, recomiendo leer el manual oficial y visitar estos enlaces para entender y poder escoger la opción que convenga.
- Manual oficial de PHP: mkdir
- Mkdir recursivo no funciona cuando el path incluye una carpeta raíz inexistente.
Suerte.