[ Pobierz całość w formacie PDF ]
.Przytoczony wcześniej przykład może być łatwo przepisany naPHP i zajmie to mniej czasu.Dodatkowo kroki podjęte w czasie integracji muszą być w części powtórzone dlakażdej nowej wersji PHP.Jeżeli zamierzasz zawsze korzystać z najnowszej wersji PHP, powoduje to koniecznośćciągłej konserwacji istniejącej witryny.Inną możliwością wykorzystania istniejącego kodu C/C++ jest jego skompilowanie i wykonywanie naserwerze WWW poprzez PHP.Metoda ta zostanie opisana w dalszej części rozdziału.JavaW rozdziale 9, Niezależność od przeglądarki przedstawiony został opis połączenia Javy z PHP.Możliwość używania klas Javy została wprowadzona w PHP4.Z powodu popularności Javy, dostępne jest wieleklas i modułów klas Javy, oferowanych przez wielu niezależnych dostawców.Obsługa Javy nie jest włączonadomyślnie do PHP, więc należy przekompilować PHP, aby móc skorzystać z tego potężnego narzędzia.Dodawanie obsługi Javy w PHP na *niksachJeżeli korzystasz z PHP na platformie *nix, musisz przekompilować PHP w celu dodania obsługi Javy.Wpodręczniku PHP znajdziemy, że nie można wykorzystać opcji konfiguracji --with-java, jeżeli posiadasz PHPstatycznie włączone w Apache.Opcja ta działa, jeżeli PHP jest uruchamiany jako program CGI lub dynamiczniewłączany moduł Apache.Z powodów bezpieczeństwa nie zaleca się korzystania z PHP w postaci CGI.Jeżeliserwer Apache nie posiada obsługi dynamicznych modułów, należy go wcześniej przekompilować.Rozdział 11 Ponowne wykorzystanie kodu138Poniższy skrypt powoduje przekompilowanie Apache tak, aby korzystał z dynamicznie ładowanychmodułów oraz tworzy właściwie skonfigurowany skrypt apxs, który będzie potrzebny do skompilowania PHP.Wskrypcie tym zakładamy, że będzie on uruchomiony z głównego katalogu instalacji Apache.make clean./configure --enable-module=so --enable-rule=SHARED_CORE --prefix=/wwwmakemake installPo przekompilowaniu Apache można uaktywnić obsługę Javy w PHP za pomocą następującego skryptu.Zakładamy w nim, że będzie uruchomiony z głównego katalogu instalacji PHP.make clean./configure --with-apxs=/www/bin/apxs --with-java.makemake installOpcja --with-java może zawierać ścieżkę oznaczającą katalog instalacji używanej maszyny wirtualnejJavy.Po zakończeniu kompilacji można sprawdzić konfigurację PHP za pomocą funkcji phpinfo().Należyrównież ustawić kilka opcji konfiguracji Javy w pliku php.ini.Pierwsza jest linia z dołączeniem rozszerzenia(extension=libphp_java.so).Pozostałe opcje zostaną omówione pózniej.Dołączanie obsługi Javy w PHP dla WindowsZamiast kompilowania specjalnej wersji PHP dla Windows, rozszerzenie Javy jest dostępne do pobrania zwww.php.net.Powinieneś sprawdzić która wersja JDK (Java Development Kit) jest zainstalowana na serwerze.Można to zrobić przy pomocy java -showversion.Należy pobrać odpowiedni plik rozszerzenia i skopiowaćphp_java.dll do katalogu systemowego.W Windows 95 jest to zwykle \windows\system a Windows NT\winnt\system32.Następnie należy uaktualnić plik php.ini.Należy doda linię ładującą rozszerzenie(extension=php_java.dll).Następnie należy dodać odpowiednio sekcję z opcjami konfiguracji.Są one kluczowedo prawidłowego działania Javy na każdej platformie.Opcje konfiguracji JavyNiezależnie od platformy, jeżeli obsługa Javy jest aktywna w PHP, musisz dodać kilka opcji konfiguracjido pliku php.ini.W Windows sekcja ta powinna wyglądać podobnie do następującej:[java]java.class.path="D:\php4\php_java.jar;D:\PHP4 book\other\RTF2HTML\lib\Scrooge_09b7.jar"java.home="D:\Program Files\JavaSoft\JRE\1.3"java.library="D:\Program Files\JavaSoft\JRE\1.3\bin\hotspot\jvm.dll"W przypadku systemów *nix, sekcja ta jest następująca:[java]java.library.path=/usr/lib/kafee:/home/blake/php-4.1p12/modulesjava.home=/usr/lib/kaffejava.class.path=/usr/share/kaffe/Klasses.jar:/home/blake/php-4.1.p12/ext/java/php_java.jar:/home/blake/bhawk/lib/bhawk4j.jar:/home/blake/bhawk:/home/blake/java/numberspeller.jar:/home/blake/java/sax2.jar:/home/blake/java/servlet.jar:/home/blake/java/scrooge.jarjava.library=/www/libexec/libkaffevm.soPo skonfigurowaniu obsługi Javy, w pliku php.ini musisz podać lokalizację klas Javy lub plików JAR.Należy to wykonać dla każdej używanej klasy Javy, której chcesz używać.Jak widać na zamieszczonych opcjachkonfiguracji, java.class.path zawiera pełną ścieżkę do plików implementacji.Tak jak jest to w przypadku każdego języka umożliwiającego tworzenie komponentów, dla Javy dostępnejest wiele narzędzi, z których można skorzystać za pomocą języka obsługującego API.Jednym z dostępnychkomercyjnie modułów Javy jest konwerter RTH na HTML Scrooge, który można załadować z witrynywww.betabeans.de.Moduł ten posiada prosty interfejs używany do konwertowania plików RTF na standardowyHTML.Funkcja ta może być wykorzystywana we wielu aplikacjach, w których użytkownicy mogą wysyłać takiepliki.Ponieważ RTF obsługuje różne czcionki i układy, wykorzystanie RTF pozwala użytkownikowi nadostarczanie plików bez niebezpieczeństwa bezpośredniego dodawania kodu HTML do witryny.Moduł Scroogezawiera przykładowy plik RTF (pokazany na rysunku 11.2.) którego możemy użyć do sprawdzenia siły ielastyczności modułu.PHP Kompendium wiedzy139Rysunek 11.2.Przykładowy plikRTF modułuScroogeUżycie modułu Scrooge jest łatwe i proste.Dołączona dokumentacja zawiera nazwę klasy Javy, oraz listędostępnych metod i właściwości.W skrypcie z wydruku 11.8 pokazane jest wykorzystanie tego modułu.Wydruk 11.8
[ Pobierz całość w formacie PDF ]