Функция PHP HmacSHA256 () не распознана - PullRequest
0 голосов
/ 11 января 2012

У меня есть код, который использует эту функцию, и я получаю сообщение об ошибке, что вызов неопределенной функции.

Возможно, я использую старую версию PHP. Вот вывод моего phpinfo (): http://problemio.com

Но я не уверен, как сделать эквивалент этой функции, которая является требованием для какой-то другой службы, на которую мне нужно отправить вывод.

Код в настоящее время выглядит так:

$encoded_string_to_sign = URLEncode(Base64_Encode(HmacSHA256($string_to_sign)));

Спасибо за вашу помощь, Alex

Ответы [ 3 ]

2 голосов
/ 11 января 2012

Это не встроенная функция PHP. Вы, вероятно, ищете hash_hmac() и вызов типа:

$hashed = hash_hmac("sha256", $data,  $key);

Возможно, в используемом вами коде определена функция-оболочка или что-то в этом роде.

(И из вашего phpinfo() вывода кажется, что присутствует очень hash расширение.)

1 голос
/ 11 января 2012

Вы можете попробовать использовать hash_hmac () с "sha256" в качестве первого параметра.

1 голос
/ 11 января 2012

Посмотрите на расширение mcrypt . Примеры найдены здесь .

...