Функция PHP работает по-разному на сервере и локальном хосте

Я создал класс для системы входа в систему. Я использую функцию для генерации солевого ключа на 128 бит. Но когда я запускаю эту функцию на сервере (GoDaddy Servers), она сообщает мне, что у th round () неверное количество аргументов. Хотя я тестировал его несколько раз на локальном хосте, и все в порядке.

Не могли бы вы взглянуть на него и сказать, что с ним не так?

function encrypt($str, $len=null) {
 return (!empty($len)) ?
    hash('sha512', str_pad($str, (strlen($str) + $len),substr(hash('sha512', $str),round(strlen($str)/3, 0,PHP_ROUND_HALF_UP),($len - strlen($str))),STR_PAD_BOTH)) :
    hash('sha512', substr($str,round(strlen($str)/3, 0,PHP_ROUND_HALF_UP), 16));
}
0
задан Roland 11 December 2011 в 07:39
поделиться