@dimavfox

Ошибка функция при переносе сайта на хостинг?

Значит есть сайт на PHP.
Загрузил его файлы на хостинг adm.tools. Хочу зарегестрироваться, но выдает ошибку в этом коде, Call to undefined function random_int(). Хотя на компьюетере установлен XAMPP и все хорошо работает. Как исправить?
function getToken($length){
			$token = "";
			$codeAlphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
			$codeAlphabet.= "abcdefghijklmnopqrstuvwxyz";
			$codeAlphabet.= "0123456789";
			$max = strlen($codeAlphabet); // edited

		    for ($i=0; $i < $length; $i++) {
		        $token .= $codeAlphabet[random_int(0, $max-1)];
		    }

	    	return $token;
		}
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
ivan_zhuck
@ivan_zhuck
random_int() доступна только начиная с седьмой версии PHP. Если на хостинге стоит версия ниже, то замените random_int() на rand() с теми же параметрами (стоит учесть что rand не безопасен для криптографических целей).

Или обновите PHP до версии 7 или выше.

Или используйте стороннюю библиотеку с реализацией этого функционала, например: https://github.com/paragonie/random_compat
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
Замечание: Эта функция была добавлена в PHP 7.0, а для версий с 5.2 по 5.6 включительно доступна » пользовательская реализация.
Читайте доку
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы