Ver Mensaje Individual
  #5 (permalink)  
Antiguo 03/04/2015, 20:16
Avatar de NSD
NSD
Colaborador
 
Fecha de Ingreso: mayo-2012
Ubicación: Somewhere
Mensajes: 1.332
Antigüedad: 12 años
Puntos: 320
Respuesta: Pasar una función de java a php

En efecto, necesitas php 5.4 o superior.

Si tienes 5.3 o superior puedes usar funciones lambda:
Código PHP:
Ver original
  1. <?php
  2.     $pass = "123456789";
  3.     $hex2bin = function($h) { return hex2bin($h); };
  4.  
  5.     echo '{MD5}'.base64_encode(implode("", array_map($hex2bin, str_split(md5($pass), 2))));
o la versión in-line:
Código PHP:
Ver original
  1. <?php
  2.     $pass = "123456789";
  3.  
  4.     echo '{MD5}'.base64_encode(implode("", array_map(function($h) { return hex2bin($h); }, str_split(md5($pass), 2))));

Para versiones anteriores de PHP es necesario definir la funcion de mapeo dentro del espacio de usuario:
Código PHP:
Ver original
  1. <?php  
  2.     function hex2bin2 ($h) { return hex2bin($h); }
  3.     $pass = "123456789";
  4.  
  5.     echo '{MD5}'.base64_encode(implode("" , array_map("hex2bin2", str_split(md5($pass), 2))));
__________________
Maratón de desafíos PHP Junio - Agosto 2015 en FDW | Reglamento - Desafios