Первая проблема - это предупреждающее сообщение, которое вы получаете, в котором указано, что safe_mode
включено, что слишком часто случается, когда вы пользуетесь услугами общего хостинга. .
И когда safe_mode
включен, вы не можете устанавливать какие-либо переменные окружения: единственные, которые вы можете установить, используя putenv
, - это те, чье имя начинается с чего-то в списке в safe_mode_allowed_env_vars
.
LC_
вероятно не разрешенный префикс; что означает, что вы не можете сделать это:
putenv("LC_ALL=$locale");
Эта строка бесполезна, вы можете удалить ее - по крайней мере, предупреждение исчезнет ...
После этого у вас возникает вторая проблема : функция bindtextdomain
не существует - отсюда Fatal Error
, которая завершает ваш скрипт.
Эта функция является одной из функций, предоставляемых расширением gettext . Я бы сказал, что это расширение не установлено / не включено в вашей службе хостинга ...
Вы можете проверить, работает ли страница, содержащая:
<?php
phpinfo();
?>
В нем будут перечислены все расширения, которые установлены / включены; если gettext не является одним из них, то, к сожалению, вы мало что можете сделать ...
Обращаться к вашему провайдеру истории, чтобы он установил это расширение, было бы идеей ... Но с бесплатным хостингом, я сомневаюсь, что это поможет ... Возможно, вам придется пойти с другим хостингом ( даже если это стоит несколько долларов / евро ...)