Есть ли способ использовать Legacy Mongo PHP Driver из PECL с PHP7? Может быть, неофициальная версия с поддержкой PHP7 или компиляция/модификация ...Использование «Наследие» драйвера MongoDB с PHP7
ответ
Существует альтернатива, если вам действительно нужно использовать любой комплект или библиотеку с сильными зависимостями от устаревшего драйвера php mongo, он называется «alcaeus: mongo-php-adapter». Он предоставляет библиотеку ext-mongo поверх mongo-php-library (sic).
https://github.com/alcaeus/mongo-php-adapter
Если вы столкнулись с какими-либо проблемами с композитором, связанным с отсутствием унаследованного водителя (Famous сообщения «Запрошенная расширение PHP доба-Монго * отсутствуют»), вы можете это исправить, добавив, что в composer.json
"обеспечивают": { "Ext-Монго": "1.6.12" },
в этом случае может быть, вы хотите взглянуть на эту тему (такая же ситуация, но с Heroku): https://github.com/alcaeus/mongo-php-adapter/issues/67
Нет, старый драйвер не поддерживает PHP7. Вот the commit и JIRA Ticket, где это было официально завершено.
Новый драйвер PHP MongoDB можно найти in PECL here (или GitHub).
Чтобы установить, просто:
pecl channel-update pecl.php.net
pecl install mongodb
echo "extension=mongodb.so" >> `php --ini | grep "Loaded Configuration" | sed -e "s|.*:\s*||"`
документация для нового драйвера можно найти here. Я хотел бы включить примечание из документации:
В конечном счете, это расширение не предназначено для использования отдельно. Пользователям следует рассмотреть возможность использования этого драйвера рядом с одной или несколькими библиотеками PHP в пользовательской среде, например mongo-php-library.
Новый mongodb
драйвер/расширение PHP является гораздо более низкого уровня, чем водитель наследство mongo
, и вам предлагается использовать библиотеку более высокого уровня на вершине водителя, а не использовать его непосредственно в коде ,
Mongo PHP Library (releases) является официальной высокоуровневой библиотекой для PHP, и это то, что рекомендуется использовать в ваших проектах. Он по-прежнему находится в бета-версии, но это, по-видимому, самый безопасный и наиболее перспективный путь вперед с PHP7.
Редактировать: Legacy Mongo Driver больше неактивен.
Прежде всего, thx для редактирования. От правильного вопроса до неправильного. Я знаю о последнем коммите. Я знаю о новом драйвере. Я нахожу способ использовать старый драйвер с PHP7. Это то, о чем я прошу. –
Нет проблем. Правильно, старый драйвер просто не будет работать с PHP7. Вам нужно будет вручную модифицировать его для совместимости с новым API. Я думаю, это будет подходящее время для перехода на новый драйвер. – Will
Возможный дубликат https://stackoverflow.com/questions/34486808/installing-the-php-7-mongodb-client-driver/34584135 Я понял. – Will