Últimos snippets en PHP
Enviar un formulario desde PHP
/** * function enviaPOST (string $host, string $url, array $datos, boolean $error = false) * * Envia un formulario a una url remota y obtiene el resultado * * @$host: Servidor de destino * @$url: Url del fichero que recibirá el formulario * @$datos: Datos que se enviarán, en formato $datos['clave'] = 'valor'; * @$error: Enseñar el error en caso de problemas en el envío * * return string */ function enviaPOST ($host, $url, $datos, $error = false) { $postdata = ''; if (!$da) { return false; } foreach ($datos as $k => $v) { } } $respuesta = ''; $salida = 'POST '.$url.' HTTP/1.1' ."\r\n".'Host: '.$host ."\r\n".'User-Agent: PHP Script' ."\r\n".'Content-Type: application/x-www-form-urlencoded' ."\r\n".'Accept-Charset: ISO-8859-1, utf-8;q=0.66, *;q=0.66' ."\r\n".'Connection: close' ."\r\n\r\n".$postdata; } } return false; }
En PHP post enviar formulario por Lito hace on 4/2/08 | Comentarios
Crear directorios de manera recursiva
/** * function dir_recursivo (string $destino) * * Crea un arbol de directorios de manera recursiva * * return boolean */ function dir_recursivo ($destino) { return true; } $dir = ''; foreach ($dirs as $part) { continue; } $dir .= '/'.$part; if ($part == '..') { continue; } if (!$ok) { return false; } } } }
En PHP directorios recursivo por Lito hace on 4/2/08 | Comentarios
Texto simple para URL
/** * function palabra_simple (string $texto, boolean $min, boolean $html = false) * * Cambia las letras con tildes, eñes o caracteres raros por su concordancia natural. * En caso de que min sea true devolvera el texto en minúsculas. * * @$min: true/false para devolver el resultado en minúsculas * @$html: true/false si la cadena de texto que recibe está formateada con htmlentities * * return string */ function palabra_simple ($texto, $min = true, $html = false) { if (!$html) { } $texto = preg_replace(array('/[^a-z0-9_-]/i', '/-+/', '/^-/', '/-$/',), array('-', '-', '', ''), $texto); }
En PHP url texto simple por Lito hace on 4/2/08 | Comentarios
Cortar un texto en la longitud deseada
/** * function corta_texto (string $txt, integer $limite = 150, string $fin = '...', string $encontrar = ' ') * * Corta un texto por el limite seleccionado y devuelve el resultado. * * @$txt: Texto a cortar * @$limite: Límite máximo de caractere que se permiten al texto * @$fin: Cadena para finalizar el texto cortado * @$encontrar: Busca la última posición de esta cadena en dentro del límite de texto y lo corta en esa posición. Por defecto un espacio. * * return string */ function corta_texto ($txt, $limite = 150, $fin = '...', $encontrar = ' ') { // Primero elimino todas las etiquetas de HTML // Si la cadena es más corta que el límite // Quito los saltos de linea y los paso a HTML } // Si no encuentra ninguna entidad HTML corta el texto y devuelve el resultado } $caracteres = preg_split('/(&[^;\s]+;)|/', $txt, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE | PREG_SPLIT_OFFSET_CAPTURE); if ($longitud === 0) { return ''; } $inicio_real = $caracteres[$longitud + $inicio][1]; if (($inicio + $limite) >= $longitud) { } else { $remate--; } } // Si no se define una cadena de texto a encontrar. } if ($pos === false) { } else { return preg_replace("/\n/s",'<br />', preg_replace("/(\r\n|\r)/s","\n", substr($txt, 0, $pos))).$fin; } }
En PHP cortar texto por Lito hace on 4/2/08 | Comentarios
Codificar correos electrónicos
/** * function codifica_email (string $txt) * * Codifica los correos electrónicos encontrados en un texto para evitar el spam * * return string */ function codifica_email ($txt) { '/([a-z0-9\._-]+@[^"\s\',\$\;]+)/ie', '$encontrado', ' $long = strlen($encontrado[1]); $correo = ""; for ($i = 0; $i < $long; $i++) { $correo .= "&#".ord($encontrado[1][$i]).";"; } return $correo; ' ), $txt ); } return $txt; }
En PHP email codificar por Lito hace on 4/2/08 | Comentarios
Array ordenado aleatoriamente
/** * function array2rand (array $array) * * Devuelve un array ordenado aleatoriamente * * return array */ function array2rand ($array) { } foreach ($claves as $v) { $resultado[$v] = $array[$v]; } return $resultado; }
En PHP array aleatorio por Lito hace on 4/2/08 | Comentarios
Encontrar la IP real de un visitante
/** * function ip (void) * * devuelve la IP de un usuario remoto * * return string */ function ip () { $s_hxff = $_SERVER['HTTP_X_FORWARDED_FOR']; $s_ra = $_SERVER['REMOTE_ADDR']; $e_ra = $_ENV['REMOTE_ADDR']; if ($s_hxff) { // los proxys van añadiendo al final de esta cabecera // las direcciones ip que van "ocultando". Para localizar la ip real // del usuario se comienza a mirar por el principio hasta encontrar // una dirección ip que no sea del rango privado. En caso de no // encontrarse ninguna se toma como valor el REMOTE_ADDR // http://www.faqs.org/rfcs/rfc1918.html '/^(00)?0\./', '/^127\.(00)?0\.(00)?0\.(00)?1/', '/^192\.168\..*/', '/^172\.0?((1[6-9])|(2[0-9])|(3[0-1]))\..*/', '/^0?10\..*/' ); if ($client_ip != $found_ip) { $client_ip = $found_ip; break; } } } } }
En PHP ip real por Lito hace on 4/2/08 | Comentarios
Generar contraseñas aleatorias en PHP
<?php /** * function texto_aleatorio (integer $long = 5, boolean $lestras_min = true, boolean $letras_max = true, boolean $num = true)) * * Permite generar contrasenhas de manera aleatoria. * * @$long: Especifica la longitud de la contrasenha * @$letras_min: Podra usar letas en minusculas * @$letras_max: Podra usar letas en mayusculas * @$num: Podra usar numeros * * return string */ function texto_aleatorio ($long = 5, $letras_min = true, $letras_max = true, $num = true) { $salt = $letras_min?'abchefghknpqrstuvwxyz':''; $salt .= $letras_max?'ACDEFHKNPRSTUVWXYZ':''; return ''; } $i = 0; $str = ''; while ($i < $long) { $i++; } return $str; } ?>
En PHP contraseña aleatoria por Lito hace on 4/2/08 | Comentarios
Descargar el contenido de una URL con cURL
function abrir($url) { $sesion = curl_init($url); curl_setopt($sesion, CURLOPT_RETURNTRANSFER, 1); curl_setopt($sesion, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($sesion, CURLOPT_TIMEOUT, 5); curl_setopt($sesion, CURLOPT_CONNECTTIMEOUT, 5); // Nos hacemos pasar por el Firefox curl_setopt($sesion, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1; es-ES; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7'); $resultado = curl_exec($sesion); curl_close($sesion); return $resultado; }
En PHP curl por jape hace on 1/2/08 | Comentarios
Función para validar IPs
function validarIP($ip) { { { return true; } else { return false; } } else { return false; } }
En PHP IP por jape hace on 1/2/08 | Comentarios
