Archivo de la categoría ‘php’

Capitalizar un string

Viernes, 23 de Julio de 2010

function Capitalizar($nombre) {

// aca definimos un array de articulos (en minuscula)

// aunque lo puedes definir afuera y declararlo global aca

$articulos = array(

‘0′ => ‘a’,

‘1′ => ‘de’,

‘2′ => ‘del’,

‘3′ => ‘la’,

‘4′ => ‘los’,

‘5′ => ‘las’,

‘6′ => ‘y’,

‘7′ => ‘i’,

);

// explotamos el nombre

$palabras = explode(’ ‘, $nombre);

// creamos la variable que contendra el nombre

// formateado

$nuevoNombre = ”;

// parseamos cada palabra

foreach($palabras as $elemento)

{

// si la palabra es un articulo

if(in_array(trim(strtolower($elemento)), $articulos))

{

// concatenamos seguido de un espacio

$nuevoNombre .= strtolower($elemento).” “;

} else {

// sino, es un nombre propio, por lo tanto aplicamos

// las funciones y concatenamos seguido de un espacio

$nuevoNombre .= ucfirst(strtolower($elemento)).” “;

}

}

return trim($nuevoNombre);

}

fopen no permitido en el servidor

Viernes, 23 de Julio de 2010

function get_content($url)
{
$ch = curl_init();

curl_setopt ($ch, CURLOPT_URL, $url);
curl_setopt ($ch, CURLOPT_HEADER, 0);

ob_start();

curl_exec ($ch);
curl_close ($ch);
$string = ob_get_contents();

ob_end_clean();

return $string;
}

$palabras = get_content ($url”);

Eliminar espacios delante y detrás de las cadenas con PHP

Jueves, 22 de Abril de 2010

Disponemos de distintas formas de eliminar estos espacios.

trim ()
Con está función eliminamos los espacios en blanco del inicio y del final de la cadena.


$txt=” Cadena con espacios en blanco al inicio y final “;
echo trim ($txt);

Y el resultado seria


Cadena con espacios en blanco al inicio y final

chop ()
Elimina espacios sobrantes al final

ltrim ()
Elimina el espacio en blanco del principio de una cadena

Paginación automática con php

Martes, 9 de Marzo de 2010

Vamos a ver una forma de poner paginación automática, gracias a PAGINATOR

Bajarse el script: aquí

¿Cómo se utiliza?

  • Conectarse a la Base de datos.
  • Definir una sentencia sql (cadena) válida (para MySql) y almacenarla en la variable $_pagi_sql. Esta variable no debe contener la cláusula “LIMIT”, pues será agregada automáticamente por el script. La definición de esta variable es OBLIGATORIA.
  • OPCIONALMENTE también podemos definir las siguientes variables:
    1. $_pagi_cuantos: Entero. Número de resultados que queremos obtener por cada página. Si no se define esta segunda variable, será por defecto 20.Disponible desde la versión 1.0
    2. $_pagi_nav_num_enlaces: Entero. Cantidad de enlaces a los números de página que se mostrarán como máximo en la barra de navegación. Por defecto se muestran todos. Disponible desde la versión 1.3
    3. $_pagi_mostrar_errores: Booleano. Define si se muestran o no los errores de MySQL que se puedan producir. Por defecto está en “true”. Disponible desde la versión 1.3
    4. $_pagi_propagar: Array de cadenas. Contiene los nombres de las variables que se quiere propagar por el url. Por defecto se propagarán todas las que ya vengan por el url (GET). Disponible desde la versión 1.4
    5. $_pagi_conteo_alternativo: Booleano. Booleano. Define si se cuentan los registros desde PHP con mysql_num_rows() (true) o desde MySQL como se venía haciendo hasta ahora con COUNT(*) (false). Por defecto está en false. Recomendable mantener en false a menos que dé errores de conteo o resultados no esperados. Disponible desde la versión 1.5
    6. $_pagi_nav_estilo: Cadena. Contiene el nombre del estilo CSS para los enlaces de paginación. Por defecto no se especifica estilo.
    7. $_pagi_nav_anterior: Cadena. Contiene lo que debe ir en el enlace a la página anterior. Puede ser un tag <img>. Por defecto se utiliza la cadena “&laquo; Anterior”.
    8. $_pagi_nav_siguiente: Cadena. Contiene lo que debe ir en el enlace a la página siguiente. Puede ser un tag <img>. Por defecto se utiliza la cadena “&raquo; Siguiente”.
  • Incluir el Paginator. A partir de aquí, quedan disponibles las siguientes variables:
    1. $_pagi_result : Que contiene el id del resultado de la consulta para los registros de la página actual, listo para pasarlo por alguna función tipo mysql_fetch_array().
    2. $_pagi_navegacion : Que contiene la “barra de navegación” para poder acceder a las diferentes páginas.
    3. $_pagi_info : Cadena que contiene información sobre los registros de la página actual. Ejemplo: “desde el 16 hasta el 30 de un total de 123″;
  • Mostrar los resultados, la barra de navegación y la info en el lugar que mejor nos parezca haciendo uso de las variables mencionadas en el apartado anterior.

Ejemplo


//Conexión a la base de datos
$con = mysql_connect("localhost","tu_username","tu_password") or die (mysql_error());
mysql_select_db("tu_base",$con) or die (mysql_error());

//Sentencia sql (sin limit)
$_pagi_sql = "SELECT * FROM clientes WHERE sexo='m' ORDER BY edad";

//cantidad de resultados por página (opcional, por defecto 20)
$_pagi_cuantos = 10;

//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
include("paginator.inc.php");

//Leemos y escribimos los registros de la página actual
while($row = mysql_fetch_array($_pagi_result)){
    echo $row['nombre']."<br />";
}

//Incluimos la barra de navegación
echo"<p>".$_pagi_navegacion."</p>";

Fuente: http://jpinedo.webcindario.com/scripts/paginator/


Saber cuantos días tienen un mes en PHP

Martes, 2 de Marzo de 2010

Se puede saber por código cuantos días tiene un mes, esto va bien para que no de problemas los meses bisiestos.

date(”t”, strtotime(”$data”))

data será la fecha que queremos buscar el número de días del mes.

Saludos!!

Poner formato europeo de números decimales

Martes, 2 de Marzo de 2010

Se puede poner el formato europeo de números decimales como 1.222,23

Se hará de la siguiente forma:

number_format($value,2,”,”,”.”)

Valor pasará del 1222.3 al 1.222,23

Saludos!

sumar horas, días, meses y años con PHP

Martes, 2 de Marzo de 2010

mktime sirve para poder sumar fechas en PHP, definiendo el formato de representación.

date(‘H:i:s’, mktime( $hour1 + $hour2, $min1 + $min2, $sec1 + $sec2));

Si fueran días o meses

date(‘Y:m:d’, mktime( $year1 + $year2, $month1 + $month2, $day1 + $day2));

Se puede combinar las dos funciones

Funciones con arrays

Martes, 9 de Febrero de 2010
  • array_change_key_case — Devuelve una matriz con todas las claves de las cadenas convertidas a mayúsculas o minúsculas
  • array_chunk — Divide una matriz en segmentos
  • array_combine — Crea una nueva matriz, usando una matriz para las claves y otra para sus valores
  • array_count_values — Cuenta todos los valores de una matriz
  • array_diff_assoc — Comprueba las diferencias entre matrices teniendo en cuenta los índices
  • array_diff_key — Calcula la diferencia de matrices usando las llaves para la comparación
  • array_diff_uassoc — Computa la diferencia entre matrices con un chequeo adicional de índices, el cual es realizado por una llamada de retorno entregada por el usuario
  • array_diff_ukey — Calcula la diferencia de matrices usando callback function on the keys for comparison
  • array_diff — Comprueba las diferencias entre matrices
  • array_fill_keys — Fill an array with values, specifying keys
  • array_fill — Llena una matriz con valores
  • array_filter — Filtra elementos de una matriz mediante una función “callback”
  • array_flip — Intercambia los valores de una matriz con sus índices
  • array_intersect_assoc — Calcula la intersección de matrices verificando que también coincidan los índices
  • array_intersect_key — Calcula la intersección de matrices usando las llaves para la comparación
  • array_intersect_uassoc — Calcula la intersección de matrices con chequeo de índices adicional por una función de usuario
  • array_intersect_ukey — Calcula la intersecció de matrices usando una función de usuario para la comparación de los índices
  • array_intersect — Calcula la intersección de matrices
  • array_key_exists — Comprueba si el índice o clave dada existe en la matriz
  • array_keys — Devuelve todas las claves de una matriz
  • array_map — Aplica la llamada de retorno especificada a los elementos de las matrices dadas
  • array_merge_recursive — Une dos o más matrices recursivamente
  • array_merge — Combina dos o más matrices
  • array_multisort — Ordena múltiples matrices, o matrices multi-dimensionales
  • array_pad — Rellena una matriz con un valor hasta el tamaño especificado
  • array_pop — Extrae el último elemento de la matriz
  • array_product — Calcula el producto de valores en una matriz
  • array_push — Inserta uno o más elementos al final de la matriz
  • array_rand — Selecciona una o más entradas aleatorias de una matriz
  • array_reduce — Reduce iterativamente una matriz a un solo valor usando una función llamada de retorno
  • array_reverse — Devuelve una matriz con los elementos en orden inverso
  • array_search — Busca un valor determinado en una matriz y devuelve la clave correspondiente en caso de éxito
  • array_shift — Extrae un elemento del comienzo de la matriz
  • array_slice — Extrae una porción de la matriz
  • array_splice — Suprime una porción de la matriz y la sustituye por otra cosa
  • array_sum — Calcula la suma de los valores en una matriz
  • array_udiff_assoc — Computa la diferencia entre matrices con un chequeo de índices adicional, comparando los datos con una llamada de retorno
  • array_udiff_uassoc — Computa la diferencia entre matrices con un chequeo de índices adicional, comparando los datos y los índices con una llamada de retorno
  • array_udiff — Computa la diferencia entre matrices, usando una llamada de retorno para la comparación de datos
  • array_uintersect_assoc — Calcula la intersección de matrices con chequeo adicional de ídices, comparando los datos por una función del usuario
  • array_uintersect_uassoc — Calcula la intersección de matrices con chequeo adicional de índices, compara los datos y los índices por una función del usuario
  • array_uintersect — Calcula la interseccón de matrices, compara los datos con una función del usuario
  • array_unique — Remueve valores duplicados de una matriz
  • array_unshift — Introduce uno o más elementos al principio de la matriz
  • array_values — Devuelve todos los valores de una matriz
  • array_walk_recursive — Aplicar una función de usuario recursivamente a cada miembro de una matriz
  • array_walk — Aplica una función del usuario a cada elemento de una matriz.
  • array — Crear una matriz
  • arsort — Ordena una matriz en orden inverso y mantiene la asociación de índices
  • asort — Ordena una matriz y mantiene la asociación de índices
  • compact — Crea una matriz que contiene variables y sus valores
  • count — Cuenta los elementos de una matriz o propiedades de un objeto
  • current — Devuelve el elemento actual de una matriz
  • each — Devuelve el siguiente par clave/valor de una matriz y avanza el apuntador
  • end — Mueve el puntero interno de una tabla al último elemento
  • extract — Importa variables a la tabla de símbolos desde una matriz
  • in_array — Revisa si un valor existe en una matriz
  • key — Obtiene una clave de una matriz asociativa
  • krsort — Ordena una matriz por clave en orden inverso
  • ksort — Ordena una matriz por clave
  • list — Asigna variables como si fueran una matriz
  • natcasesort — Ordena una matriz usando un algoritmo de “orden natural” sin distinguir mayúsculas de minúsculas
  • natsort — Ordena una matriz usando un algoritmo de “orden natural”
  • next — Avanza el puntero interno de una matriz
  • pos — Alias de current
  • prev — Rebobina el puntero interno de una matriz
  • range — Crea una matriz que contiene un rango de elementos
  • reset — Fija el puntero interno de una matriz a su primer elemento
  • rsort — Ordena una matriz en orden inverso
  • shuffle — Mezcla una matriz
  • sizeof — Alias of count
  • sort — Ordena una matriz
  • uasort — Ordena una matriz mediante una función de comparación definida por el usuario y mantiene la asociación de índices
  • uksort — Ordena una matriz por claves mediante una función definida por el usuario
  • usort — Ordena una matriz por sus valores usando una función de comparación definida por el usuario

Interpretar saltos de linea con php

Miércoles, 16 de Diciembre de 2009

Esta función sirve para interpretar los saltos de linea creados por el usuario a la hora de rellenar formularios.

nl2br($tring);

Compartir variables de sesión entre subdominios en php

Jueves, 10 de Diciembre de 2009

Con este código al principio de todo es el código, ya no se perderán las variables de sesión.

Muy útil si tienes áreas privadas con acceso con contraseña y diversos subdominios

ini_set(’session.cookie_domain’, ‘.dominio.com’ );

Donde solo se tiene que substituir ‘.dominio.com’, por el que sea vuestro.