wamp — windows php 64 битные системы банкомат

я использую этот php библиотека. Это упоминает это:

Этот проект может работать на PHP 7, PHP 5.6 и HHVM, поддерживаются только 64-битные системы ATM.

Он отлично работает в linux хост (cpanel) с php5.6, Но не работает в окнах. Я установил Wamp. В phpinfo()Вроде все ок. Я что-то пропустил? Что такое ATM средства?

мой phpinfo():

введите описание изображения здесь

Ошибка:

Fatal error: Uncaught exception 'danog\MadelineProto\Exception' with message 'MadelineProto supports only 64 bit systems ATM' in C:\wamp64\www\telegramphp3\src\danog\MadelineProto\API.php on line 30

0

Решение

Их API.php содержит следующий код:

// Detect 64 bit
if (PHP_INT_SIZE < 8) {
throw new Exception('MadelineProto supports only 64 bit systems ATM');
}

То, что они делают, это не проверять, когда вы запускаете 64-битную сборку PHP, или нет, если ваша система 64-битная, а что размер в байтах для целого числа. Это значение может быть 4 (32-разрядным) или 8 (64-разрядным) в PHP7 (текущие сборки Windows). В более старых версиях PHP (по крайней мере в 64-битных сборках для 5.6, которые помечены как экспериментальные) это значение будет всегда 4.

Таким образом, чтобы использовать эту библиотеку в вашей системе, вам необходимо:

  • Обновите версию PHP до 7
    • Текущие сборки Windows можно найти Вот, Вы можете просто заменить текущую установку PHP или найти обновленный пакет вашего … пакета.
2

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

Это происходит потому, что библиотека проверяет 64-битную версию, проверяя константу PHP_INT_SIZE. Эта константа всегда равна 4 в Windows, когда вы используете PHP 5.6, даже в 64-битных системах. Для этой проблемы в Windows, см. PHP_INT_SIZE возвращает 4, но моя операционная система 64-битная

«Проблема» может быть найдена в API.php вокруг строки 29. Эта проверка, хотя и неверная, кажется рекомендуемый способ проверить на 64 бит. Несмотря на это, если они действительно полагаются на 8-битные целые числа, я думаю, что вы не можете использовать эту библиотеку в Windows с PHP 5.6.

PHP 7 поддерживает 64-битные целые числа в Windows, поэтому я думаю, что вам следует перейти на PHP 7, если вы хотите использовать эту библиотеку.

1

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