PHP 5.3+ enable_dl nie włącza dl ()?
Próbuję zainstalować rozszerzenie PHP innego producenta (.so) w PHP 5.3.6-13 na Ubuntu 11.10 i używać go w środowisku WWW. Dokumentacja dostawcy sugeruje użyciedl()
funkcja dynamicznego ładowania biblioteki.
Kiedy próbuję ich przykładowego kodu, znajdujędl()
nie jest dostępny (Błąd krytyczny: wywołanie niezdefiniowanej funkcji dl ()) jakodl()
funkcja była przestarzała w PHP 5.3. Ale jestenable_dl
regułę konfiguracji w php.ini iinnych źródeł powiedz, że powinienem móc używać dl () po prostu zmieniając zmienne php.ini (enable_dl=On
, safe_mode=Off
, niewymienione wdisable_functions
) i ponowne uruchomienie apache. Kiedy to spróbuję,dl()
jest nadal niezdefiniowany.
Więc zagłębiam się wPHP 5.3 SAPI zmienia notatki i znajdź to:
Funkcja dl () jest teraz domyślnie wyłączona, a teraz jest dostępna tylko w CLI, CGI i osadzonych SAPI.
Czy to znaczy takdl()
Nie jest jedyny„domyślnie wyłączone” w PHP 5.3+ za pomocą web SAPI, ale w rzeczywistości„całkowicie niedostępny bez względu na to, co robię, nawet modyfikując opcje konfiguracji PHP”? Tak mi się wydaje, ponieważ nie mogędl()
pracować bez względu na to, co poprawię.
Aby wyjaśnić: jamogą zmodyfikuj php.ini i załaduj rozszerzenie bezpośrednio, tak jestnie pytanie o to, jak uzyskać rozszerzenie, a raczej o funkcjędl()
i jego stan w PHP 5.3+. Jeśli nie jest już dostępny w żadnych okolicznościach, chcę móc poinformować sprzedawcę, aby mogli zaktualizować swoją dokumentację. Ale jeśli to powinno być dostępne, a ja po prostu czegoś brakuje, też chciałbym to usłyszeć.