off topic: php - acortar una cadena

Juan C. Olivares juancri en juancri.com
Mie Ene 19 22:32:34 CLST 2011


Miguel:

Lo que pasa es que ahí estás pasando a base64 el string. Lo que deberías
hacer es obtener el número como arreglo de bytes... no sé cómo se hace
exactamente en PHP.

2011/1/19 Miguel Oyarzo O. <admin en aim.cl>

>
> Eso pensé yo, pero mira
>
> echo base64_encode("801816020110119185516");
> Salida: ODAxODE2MDIwMTEwMTE5MTg1NTE2
>
>
> =====================================
> Miguel A. Oyarzo O.
> Ingeniería en Redes y Telecomunicaciones
> Austro Internet S.A.  &  INALAMBRICA S.A.
> Teléfono: [+05661] 710030
> Punta Arenas - Chile
> Linux User: # 483188 - counter.li.org
> =====================================
>
> El 19-01-2011 22:20, Juan C. Olivares escribió:
>
>  Como, al parecer, esa variable es numérica, es súper simple. Sólo debes
>> cambiar la base (por ejemplo: decimal a base64).
>>
>> En teoría, el valor máximo de 21 caracteres (10^21) puede ser representado
>> por 12 caracteres en base 64. Puedes usar las funciones de base64
>> existentes
>> en PHP:
>>
>> http://php.net/manual/es/function.base64-encode.php
>> http://php.net/manual/en/function.base64-decode.php
>>
>> 2011/1/19 Miguel Oyarzo O.<admin en aim.cl>
>>
>>
>>> Estimados,
>>>
>>> Necesito acortar de cualquier forma una variable de 21 caracteres y dejar
>>> una representacion en solo 10.
>>>
>>> Ejemplo:
>>>
>>> echo acortar("192034123456456789098");
>>> Salida:  !QQ23"!EQW
>>>
>>> echo deacortar("!QQ23"!EQW");
>>> Salida: 192034123456456789098
>>>
>>> No más de 10 (ese es el problem).
>>> Alguna sugerencia?
>>>
>>> --
>>> =====================================
>>> Miguel A. Oyarzo O.
>>> Ingeniería en Redes y Telecomunicaciones
>>> Austro Internet S.A.&   INALAMBRICA S.A.
>>> Teléfono: [+05661] 710030
>>> Punta Arenas - Chile
>>> Linux User: # 483188 - counter.li.org
>>> =====================================
>>>
>>>
>>
>>
>>


-- 
Atte,
Juan Cristóbal Olivares

*Renovarse o morir: Mi PC de los sesenta tenía veinte mil militantes. Y mi
PC del siglo XXI tiene cuarenta gigabytes.*


Más información sobre la lista de distribución Linux