У нас есть сторонний пакет, который требует использования PHP dl()
функция для загрузки двоичного расширения. Эта функция устарела и удалена с PHP 5.3, поэтому мы ищем способ заставить ее работать - возможно, путем перехода на PHP 5.2.
Похоже, у меня действительно тяжелые времена, когда я пытаюсь понизить версию PHP 5.3 до версии 5.2. Я пробовал использовать утилиту yum downgrade, но у меня ничего не получилось.
Кто-нибудь знает, как это сделать без компиляции из исходного кода, поскольку мне не очень хочется пытаться удовлетворить нагрузку на лодку зависимостей вручную?
В качестве альтернативы, есть ли другой способ заставить этот сторонний пакет работать, не требуя dl()
?
Переход на неподдерживаемую версию PHP, скорее всего, будет (неудивительно) неподдерживаемый.
Компиляция из исходных кодов или поиск кого-то, кто упаковал RPM, - в значительной степени ваши единственные два варианта.
Вероятно, вам не нужно использовать dl()
.
Вам следует никогда нужно использовать dl()
.
Несмотря на то, что вам, возможно, сказали, существуют альтернативы использованию dl()
.
Вы должны использовать php.ini
директива extension
вместо того dl()
.
Если ваше стороннее программное обеспечение настолько плохо написано, что вы не можете безопасно загрузить расширения (используя php.ini
с extension
директиве), вам необходимо серьезно поговорить с вашим поставщиком - они просят вас подвергнуть всю вашу систему чрезмерному риску, как за счет использования dl()
и заставляя вас запускать неподдерживаемую версию PHP, чтобы использовать их продукт.