Ir al contenido principal

Algunas funciones en PHP

Muchas veces como programadores necesitamos realizar algunas cosas que el lenguaje que estamos utilizando no posee o bien posee algo similar pero que no nos sirve. Es ahí donde nos vemos en la obligación de escribir nuestras propias funciones para lograr el objetivo deseado.
Una función debe ser lo más simple posible, es decir, debe tener un número reducido de líneas y debe poder utilizar otras funciones ya escritas o existentes en el lenguaje que estemos utilizando.
Esto hace a la optimización de nuestros recursos computacionales y a la intelegibilidad de nuestro código fuente. Además, nuestro código, debe poseer una breve pero a la vez detallada documentación mediante el uso de comentarios; basta con que sea una "traducción" en palabras de la línea o bloque que se desea documentar. Por ejemplo:

// El saldo es igual a los ingresos menos los egresos
$saldo = $ingresos - $egresos;

Este es un ejemplo muy, muy sencillo; pero la idea es esa. Esto es útil ya que muchas veces tenemos la mala costumbre de colocar nombres de variables que son abreviaciones de palabras o frases completas; como por ejemplo solemos colocar 'cant' en lugar de 'cantidad'. En estos casos puede resultar engorroso leer el código sobre todo si el dominio es muy técnico.
Bueno basta de teoría en vamos a los "bifes" (expresión en Argentina que significa "vayamos al grano" ;-) un poco de cultura no hace mal a nadie).
A continuación les dejo el código fuente de algunas funciones que tuve que escribir en PHP para diferentes situaciones.

<?php
///
/// Indica si el elemento pasado es el último del arreglo
///
/// @param mixed $element - Elemento del arreglo a evaluar
/// @param array $array - Arreglo a evaluar
/// @returns [TRUE|FALSE] - Si es el último elemento devuelve TRUE, en otro caso devuelve FALSE
///
function is_last($element,$array)
{
return ( (
$element == end($array) )?true:false );
}

///
/// Arma una cadena de caracteres con los elementos
/// del array separados por algún caracter
///
/// @param array $elements - Arreglo con los elementos de la lista
/// @param string $separator - Cadena que se usará como separador de los elementos
/// @returns string - Devuelve la lista con sus elementos separdos por el separador
///
function list_separated($elements,$separator)
{
$list_separated = "";
foreach(
$elements as $one){
$list_separated .= $one.( ( is_last($one,$elements) )?"":$separator );
}
return
$list_separated;
}


///
/// Quita los acentos de una cadena
///
/// @param string $cadena_acentuada - Cadena con vocales acentuadas
/// @returns string - Devuelve una cadena con vocales sin acento
///
function sacar_acentos($cadena_acentuada){
$vocales = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$vocales_acentuadas = array("á", "é", "í", "ó", "ú", "Á", "É", "Í", "Ó", "Ú");
$sinacentos = str_replace($vocales_acentuadas,$vocales ,$cadena_acentuada );
return
$sinacentos;
}
?>

Estas son algunas funciones, en breve habrá más. Espero les sirva. Si desean saber si tengo alguna función en especial me lo pueden preguntar en al siguiente email: iceman113gmail.com

Comentarios

Entradas populares de este blog

Patrón DAO en PHP (Data Access Object in PHP)

Este patrón es de gran ayuda a la hora de separar la manipulación de datos y acceso a la DB de la lógica propia de la aplicación. Una versión simplificada de este patrón posee tres componentes principales: El acceso a los datos El objeto de transferencia de datos (value object) El cliente que consume esos datos Antes de presentar el diagrama de clases analicemos el problema el cual consiste en encontrar una forma de manipular los datos de manera tal que el modo de acceder a los mismos sea transparente al cliente que los consume. Esto quiere decir que el cliente no tiene la necesidad de conocer cómo se acceden a los datos (SQL, conectores, motor de base de datos, tipo de base de datos, etc.). El objeto de acceso a los datos debe ser capaz de poder proveer lo que el cliente requiera y además el cliente debe poder utilizar cualquier otro objeto de acceso sin que esto afecte su lógica interna asegurando así que el sistema funcionará aún cuando se cambie de motor de base de...

Configurar Wi-Fi en Slackware

Ahora es común tener una notebook pero no lo es tanto el tener un linux en ella y mucho menos tener un Slackware en la notebook. Sin embargo, es posible tenerlo por lo que vale la pena dedicarle unas líneas a la configuración del Wi-Fi. Primero que nada hay que saber cuál es la placa de red inalambrica que posee la notebook, es decir su marca y modelo. Si ya está Linux instalado en la notebook solo se debe ejecutar el siguiente comando para saber cuál es la marca y modelo de la placa de red inalambrica: # lspci Este comando dará como resultado algo similar a esto: 09:00.0 Ethernet controller: Marvell Technology Group Ltd. Unknown device 4354 (rev 12) 0b:00.0 Network controller: Intel Corporation PRO/Wireless 3945ABG Network Connection (rev 02) En estas líneas se puede observar que la segunda hace referencia a la placa de red inalambrica que posee la notebook, en este caso una Intel PRO/Wireless 3945ABG . Con esta información lo que se debe hacer es buscar cuál es el módulo que se deb...

¿Qué hace un Licenciado en Sistemas?

Muchas veces, conocidos que no son informáticos, me han preguntado ¿qué hace un Licenciado en Sistemas? ...... " Buena pregunta " - sonaba en mi cabeza. Yo sé lo que yo quiero hacer en mi vida profesional pero realmente ¿qué perfil tiene un Licenciado en Sistemas? Es sencillo saber qué hace un médico, un veterinario, un ingeniero civil, etc. Por ejemplo si su perro se enferma ¿a quién llaman? si quieren construir un puente ... ¿a quién llaman? si ustedes están enfermos ¿a quién llaman? Ahora, si necesitan un sistema para su empresa ¿a quien llaman? ... ¿a un Lic. en Sistemas? ¿a un Ing. en Sistemas? ¿a un programador de aplicaciones? ¿a un analista en sistemas? ¿a un consultor informático? o ¿al amigo que se la pasa en internet y que sabe "todo" sobre computadoras e hizo un montón de cursos (word, excel, windows, redes, etc.)? Esta situación se presenta a menudo; es tan confuso que muchas veces hasta los mismos profesionales informáticos o entendidos en la materia ...