Weblogs Código

RecorteX

» php
73 usuarios y 244 recortes de código
Usuario

Contraseña
Crear cuenta
Estás viendo los recortes de la etiqueta php

RSS
Recortes: 38

Etiquetas relacionadas:
mysql
imagenes
fichero
jpg
letras
formato
html
xhtml
fechas
existe-registro
tabla
Meneame
database
imagen-flash
base
filtrar
url
elimina-ficheros
para
leer
clases
genera-select
widgets
ADOdb
extension
tags
Meta
date
bbdd
formatear
valor-maximo
entidades
phpbb3
convertir
hora
wordpress
ajax
fecha
tildes
datos
index
busca
valor-minimo
escribir
querystring
libre
cristiano
apache
todas
dieresis
números
javascript
castellano
formulario
variables
español
SQL
mascara
cuenta-registros
ID
array
tus
Digg
paginas
clase
Fresqui
Web20
acentos

Obtener variables en php enviadas desde un formulario html

Esta es una forma elegante de obtener en php las variables enviadas desde un formulario html con el metodo GET, en caso de que la variable no hubiese sido definida o enviada, nos asignara el valor que nosotros le indiquemos.
 
 
function getvar($nm,$df="")
{ 
	return (isset($_GET[$nm] )? $_GET[$nm]: $df);
} 
 
// Ejemplos....
$nombre = getvar("nombre", null);
$pais = getvar("pais", "España");
$cantidad = getvar("cantidad", 100);
 

Listas Imagenes de un directorio filtrando por extension(es)

Obtener en un array una lista de todas las imagenes contenidas en un determinado directorio, junto con algunos datos relativos a dichas imagenes, se puede filtrar por extensiones mediante una mascara
 
 
imagenes_en_dir = listgal("fotos/", ".jpg$|.jpeg$|.png$|.gif$");
 
function listgal($dr, $mk)
{
	$fg = Array();
 
	if($hd = opendir($dr))
	{
		while (false !== ($fn = readdir($hd)))
		{
			if($fn == "." || $fn == "..") continue;
 
			if(is_file($dr."/".$fn))
			{
				if(eregi($mk, $fn))
				{
					$fz = filesize($dr. "/" . $fn);
					$iz = getimagesize($dr. "/". $fn);
					
					if($iz[0] && $iz[1] && $fz)
						$fg[] = array("name" => $fn, "width" => $iz[0],  "height" => $iz[1], "size" => $fz, "type" => $iz[2]);
				}
			}
		}
		closedir($hd);
       }
       return $fg;
}
 

Formatear tamaño de archivos

Esta simple funcion nos mostrara el tamaño de los archivos en bytes, Kbytes, Megas o Gb, podriamos mostrar tambien Teras pero de momento me parece que no es muy necesario, util en galerias de imagenes o listado de directorios.
 
function getsizebytes($sz)
{
	if($sz < 1024) return ($sz . " bytes");
	if($sz < 1048576) return (number_format($sz/1024, 2)." Kb");
	if($sz < 1073741824) return (number_format($sz/1048576, 2)." Mb");
 
	return (number_format($sz/1073741824, 2)." Gb");
}
 

Funcion busca en array y regresa index en PHP

Funcion busca en array y regresa index en PHP. Esta funcion la hice para php para que insetando un array me diera el index de donde esta una cadena u objeto, esta sencilla pero super util.
 
function encontrar_en_array($array,$object){
	for($i=0;$i<=array_count_values($array);$i++){
		if ($object==$array[$i])
			return $i;
	}
	return -1;
}
 

Volcar el contenido de una URL a una variable

Desde PHP:
 
    $f = fopen('http://www.example.com', 'rb');
    $datos = stream_get_contents($f);
    fclose($f);
 

Volcar fichero en cadena de carácteres

Cómo volcar un fichero en un String

$file = fopen("filename.ext", "rb");
$text = '';
while (!feof($file)) {
  $text .= fread($file, 8192);
}
fclose($file);

Volcar cadena de carácteres en fichero

Cómo meter el contenido de un String en un fichero
 
$file = fopen("filename.ext", "w");
$bOk  = fwrite($file, $text);
fclose($file);
 

Clase para manipular el QueryString

A veces tenemos que mantener el QueryString entre varias páginas, pero cambiar algún valor según en qué enlace pulses, pues esta clase lee el QueryString y te facilita variarlo y obtenerlo nuevamente como un String.

Es una lástima que PHP 4.x no tenga polimorfismo, "toStringWith" es una marranada.

class QueryString {

	var $aParams = array();

	function QueryString() {
	}

	function readURL() {
		$this->aParams = $_GET;
	}

	// Establece el valor $v del parámetro $k
	function setParam($k, $v) {
		$this->aParams[$k] = $v;
	}

	// Establece el valor de varios parámetros 
	// enviados en un array asociativo
	function setParams($pp) {
		while(list($k, $v)=each($pp)) {
			$this->aParams[$k] = $v;
		}
	}

	// Establece el valor $v del parámetro $k si este no existe
	function setDefault($k, $v) {
		if(!isset($this->aParams[$k])) {
			$this->aParams[$k] = $v;
		}
	}

	// Establece el valor de varios parámetros 
	// enviados en un array asociativo si estos no existen
	function setDefaults($pp) {
		while(list($k, $v)=each($pp)) {
			if(!isset($this->aParams[$k])) {
				$this->aParams[$k] = $v;
			}
		}
	}

        // Devuelve el QueryString como un String
	function toString() {
		$retval = "";
		while(list($k, $v)=each($this->aParams)) {
			$retval .= $k."=".$v."&";
		}
		return ($retval!=""? "?":"").substr($retval, 0, -1);
	}

        // Devuelve el QueryString con los parámetros indicados en el array $pp
        // pero no modifica el estado de la clase
	function toStringWith($pp) {
		$retval  = "";
		$aParams = $this->aParams;
		while(list($k, $v)=each($pp)) {
			$aParams[$k] = $v;
		}
		while(list($k, $v)=each($aParams)) {
			$retval .= $k."=".$v."&";
		}
		return ($retval!=""? "?":"").substr($retval, 0, -1);
	}

        // Devuelve el QueryString sin los parámetros indicados en el array $pp
        // pero no modifica el estado de la clase
	function toStringWithout($pp) {
		$retval  = "";
		$aParams = $this->aParams;
		while(list($a, $k)=each($pp)) {
			unset($aParams[$k]);
		}
		while(list($k, $v)=each($aParams)) {
			$retval .= $k."=".$v."&";
		}
		return ($retval!=""? "?":"").substr($retval, 0, -1);
	}

}

Limpiar HTML de una cadena

Limpia de HTML una cadena via Expresiones Regulares
 
// Limpiar HTML de una cadena
// $opcion define si la cadena de salida usara previamente un htmlentities();
function limpiarHTML($cadena,$opcion) {
   $expresion = "<[^>]+>?([^>|^<]*)<?\/[^>]*>";
 
    while (ereg($expresion,$cadena) == true) {
        $cadena = ereg_replace($expresion,'\\1',$cadena);
    }
 
    if ($opcion) {
        return htmlentities($cadena);
    } else {
        return $cadena;
    }
}
 

Obtención de fechas pasadas y futuras

La función mktime (Unix timestamp) la podemos usar para calcular fechas anteriores o posteriores de manera automática. Con la función date las podemos volver a convertir a fecha con el formato deseado.
 
  <?php
$tomorrow  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));
$lastmonth = mktime(0, 0, 0, date("m")-1, date("d"),  date("Y"));
$nextyear  = mktime(0, 0, 0, date("m"),  date("d"),  date("Y")+1);
echo date("M-d-Y",$tomorrow);
echo date("M-d-Y",$lastmonth);
echo date("M-d-Y",$nextyear);
?>
 
Proyecto: Juanjo Navarro, 2006 - Diseño: Albin