Ver Mensaje Individual
  #14 (permalink)  
Antiguo 16/02/2011, 09:42
Avatar de pateketrueke
pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: [APORTE] Chuleta de funciones!

Cita:
Iniciado por bNd170 Ver Mensaje
pateketrueke, la funcion ents (Supongo que será de arguments) no está definida, la he buscado por internet pero no he logrado encontrar gran cosa, podrias decirme que hace?
lo siento, en realidad ents() es mi propia versión extendida de htmlentities() que tiene la ventaja de no romper entidades previamente codificadas...
Código PHP:
/**
 * Reparar entidades
 *
 * @param  string  $text Cadena
 * @param  boolean $html Escapar xHTML?
 * @return string
 */
function ents($text$html FALSE)
{
//--
    
$hash uniqid('--entity-backup');
    
$text preg_replace('/&([a-z0-9;_]+)=([a-z0-9_]+)/i'"{$hash}\\1=\\2"$text);

    
$expr = array(
            
'/(&#?[0-9a-z]{2,})([\x00-\x20])*;?/i' => '\\1;\\2',
            
'/&#x([0-9a-f]+);?/ei' => 'chr(hexdec("\\1"))',
            
'/(&#x?)([0-9A-F]+);?/i' => '\\1\\2;',
            
'/&#(\d+);?/e' => 'chr("\\1")',
    );

    
$text preg_replace(array_keys($expr), $expr$text);
    
$text preg_replace('/&(#?[a-z0-9]+);/i'"{$hash}\\1;"$text);
    
$text str_replace(array('&'chr(92), $hash), array('&''&' '#92;''&'), $text);

    if (
$html === TRUE)
    {
        
$text strtr($text, array(
                
'<' => '&lt;',
                
'>' => '&gt;',
                
'"' => '&quot;',
                
"'" => '&' '#34;',
        ));
    }

    
$text preg_replace("/[\200-\237]|\240|[\241-\377]/"'\\0',$text);
    
$text preg_replace("/{$hash}(.+?);/"'&\\1;'$text);
  
    return 
$text;

aunque básicamente funciona como htmlentites()
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.