Библиотека Encrypt требует расширения Mcrypt

У меня есть PHP-приложение, написанное с использованием каркаса codeigniter. Когда я пытаюсь запустить это приложение на Windows Machine, я получаю сообщение об ошибке ниже:

Была обнаружена ошибка
Для библиотеки Encrypt требуется расширение Mcrypt.

Это же приложение прекрасно работает на некоторых случайных машинах Windows, имеющих одинаковую конфигурацию. Я пробовал на 5 разных машинах с Windows 10 и получил эту ошибку на 3 машинах и отлично работал на 2 машинах. Здесь я использовал один и тот же установщик для установки XAMPP на все машины и один и тот же код, но все еще не знаю, как заставить его работать гладко.
Я испробовал почти все предложения, доступные в Интернете, как внести изменения в php.ini, но пока не повезло.

0

Решение

Откройте php.ini

ищи ;extension=php_mcrypt.dll

затем удалите ; перед этим раскомментировать.

сохранить файл php.ini

0

Другие решения

Запустите следующий код, чтобы проверить, включен ли mccrypt в настройках PHP.

<?php phpinfo(); ?>

По умолчанию он включен на каком-то сервере, поэтому он работает на случайной машине.

Самый быстрый способ включить php-mcrypt на сервере Windows — все, что вам нужно сделать, это:

  • Найти php.ini (основной файл конфигурации php)

  • Откройте и найдите; extension = php_mcrypt.dll)

  • Раскомментируйте / удалите «;» и сохраните php.ini

0

В Linux, где PHP 5.6 или меньше …

apt-get install php5-mcrypt

0

(Только для пользователей CI) Если вы переключаетесь с CI2 XAMPP (php5) на XAMPP (php7), вставьте encrypt.php в папке CI-> system-> библиотеки, после этого все должно быть в порядке!

0

Для будущих желающих я тоже столкнулся с этой проблемой. Это обычно проблема с PHP 7.2.

Просто замени encrypt с encryption в autoload.php

$autoload['libraries'] = array('database', 'email', 'session', 'encrypt', 'pagination');

$autoload['libraries'] = array('database', 'email', 'session', '**encryption**', 'pagination');
0

Для пользователей Windows

Файл autoload.php будет выглядеть следующим образом

$ autoload [‘library’] = array (‘database’, ‘session’, ‘form_validation’, ‘encrypt’, ‘template’, ‘finediff’, ‘parser’);

Из вышеперечисленного удалите шифрование, как показано ниже, после этого перезапустите службы Apache, тогда оно будет работать ….

$ autoload [‘library’] = array (‘database’, ‘session’, ‘form_validation’, ‘template’, ‘finediff’, ‘parser’);

-1
По вопросам рекламы [email protected]