CodeIgniter es uno de los frameworks PHP que está siendo mejor valorado por los desarrolladores, estando totalmente de acuerdo en esto, cuanto más lo uso más cómodo me parece y más me gusta.
Hace unos dÃas sacaron a la luz su nueva versión (1.5.4), que nos presenta algunas novedades y algunos problemas resueltos, entra las que cabe destacar:
Nuevos ficheros de lenguajes personalizados para las opciones de carga automática.
Nuevos tipos de mime types.
UTF-8 como valor por defecto usado en algunas funciones.
Mejoras en la seguridad y tratamiento de los ataques XSS.
Algo que suele ser interesante es cuando realizamos una búsqueda en Google, que en la página a la que accedemos desde los resultados de Google, nos resalte las palabras que hemos buscado, aunque la barra de Google ya te da la oportunidad de hacerlo.
<?php
// Filtro para el array para quedarnos solo con la QUERY
function filtro($val) {
return strpos($val, 'q=') === 0;
}
// Obtenemos la página desde la que nos llaman
$url = $_SERVER['HTTP_REFERER'];
// Nos quedamos solo con los parámetros
$url = parse_url($url);
$url = $url['query'];
// Nos quedamos solo con el parámetro que nos interesa
$parametros = split("&", $url);
$cadena = array_filter($parametros, "filtro");
$cadena = urldecode(substr(array_shift($cadena), 2));
// Cacheamos la salida
ob_start();
?>
...
Página HTML
...
<?php
// Recuperamos el buffer de salida
$html = ob_get_clean();
// Por cada palabra de la cadena de búsqueda, la sustituimos por el HTML necesario para resaltar
$palabras = split(" ",$cadena);
foreach ($palabras as $palabra) {
$html = preg_replace('/('.$palabra.')/i', '<b>$1</b>', $html);
}
// Mostramos el buffer por la saliad
echo $html;
?>
En Developer.com han realizado un tutorial que explica cómo desarrollar tu primera aplicación para Android (ejecutado en un intérprete PHP de tu móvil)…
Sí, demasiadas siglas para un título, pero se trata de eso, de generar un CAPTCHA mediante PHP, pero la característica de este CAPTCHA es que se realiza mediante CSS y HTML, para lo cual presentará una tabla con celdas y solo una de ellas con un color diferente que será la que hay que pulsar para poder pasar el CAPTCHA.
La clase envía mediante AJAX una petición al servidor pasando las coordenadas de los clicks del usuario hasta que se envían un numero total de clicks a cajas coloreadas. DHTML and CSS CAPTCHA
Algo que se usa mucho en jQuery es el method chaining, encadenar la llamada de métodos en una misma sentencia. Para realizar esto en PHP lo que hay que hacer es devolver $this en cada método:
class obj {
function accion1() {
// Lo que sea
return $this;
}
function accion2() {
// Lo que sea
return $this;
}
}
$o = new obj();
$o->accion1()->accion2();
Swift Mailer es una potente librería que permite el envío de emails y que entre las características que ofrece, nos encontramos con: cabecera de control RFC 2822, internacionalización, balance de carga, soporte para SSL y TLS (para servidores GMail), imágenes embebidas, MIME 1.0 (adjuntos, …), y mucho más. Swift Mailer
Gracias Óscar por el aviso.
Ahora viene la parte más complicada, y digo complicada porque sinceramente he tenido que mirar el código porque algo me fallaba cuando seguía lo que decía la documentación.
El nombre del fichero JSON tiene el siguiente formato [dominio de traducción]-[idioma]-[handler del fichero].json, total nada.
Dominio será el que usemos para traducir, en el ejemplo sería mi-plugin:
__( 'Hola que tal', 'mi-plugin' );
Idioma es el código del idioma, en este caso es_ES
Y por último el handler del fichero es el primer parámetro que usamos en wp_enqueue_script
Lo podemos ver todo en un ejemplo final:
wp_enqueue_script(
'mi-plugin-handler', // El handler mencionado anteriormente
$blocks_script, // Nuestro path
[
'wp-i18n', // De referenciar al menos a wp-i18n
],
);
wp_set_script_translations( 'mi-plugin-handler, 'mi-plugin', plugin_dir_path( __FILE__ ) . 'languages' );