2016-01-02 5 views
1

Есть ли способ использовать Legacy Mongo PHP Driver из PECL с PHP7? Может быть, неофициальная версия с поддержкой PHP7 или компиляция/модификация ...Использование «Наследие» драйвера MongoDB с PHP7

+0

Возможный дубликат https://stackoverflow.com/questions/34486808/installing-the-php-7-mongodb-client-driver/34584135 Я понял. – Will

ответ

0

Существует альтернатива, если вам действительно нужно использовать любой комплект или библиотеку с сильными зависимостями от устаревшего драйвера 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

0

Нет, старый драйвер не поддерживает 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 больше неактивен.

+0

Прежде всего, thx для редактирования. От правильного вопроса до неправильного. Я знаю о последнем коммите. Я знаю о новом драйвере. Я нахожу способ использовать старый драйвер с PHP7. Это то, о чем я прошу. –

+0

Нет проблем. Правильно, старый драйвер просто не будет работать с PHP7. Вам нужно будет вручную модифицировать его для совместимости с новым API. Я думаю, это будет подходящее время для перехода на новый драйвер. – Will

 Смежные вопросы

  • Нет связанных вопросов^_^