Dobry programista zna nie tylko składnię języka jakiego używa, ale potrafi także czytać komunikaty, ostrzeżenia i błędy jakie spotyka w czasie pracy. Kiedy taka wiadomość ukaże się naszym oczom jesteśmy zmuszeniu do skorzystania z dokumentacji. Co może zrobić programista PHP w takiej sytuacji?
Hipotetyczna sytuacja
Tworzymy skrypt PHP, który będzie usuwał plik some-file.txt. Banalny kod naszego skryptu jest zapisany w pliku delete-file.php. Poniżej znajduje się kod naszego programu.
<?php unlink('some.file'); ?>
Uruchamiamy nasz skrypt i widzimy poniższą informację.
Warning: unlink(some.file) [function.unlink]: No such file or directory in /home/ash/public_html/test/delete-file.php on line 2
Domyślamy się, że problem stanowi funkcja unlink
, która nie znalazła wskazanego pliku. Skorzystajmy zatem ze strony manula, gdzie znajdziemy opis danej funkcji, a potem rozwiązanie problemu. Równie łatwo możemy ten proces usprawnić.
Rozwiązanie
Ostrzeżenie, które zobaczyliśmy zawiera link do dokumentacji PHP. Sam link jest podany w takiej formie, która uniemożliwia zwykłe kliknięcie myszką. Pomocny okaże się moduł mod_rewrite serwera Apache , który przepisuje adresy URL. Reguły przepisywania adresów umieszczamy w pliku .htaccess.
RewriteEngine On
RewriteBase /~ash/test/
RewriteRule function.* http://pl.php.net/manual/en/$0.php [L]
Pierwsza linia włącza przepisywanie adresów przez moduł serwera. Kolejna linia wskazuje na lokalizację naszego katalogu z projektem. Jeżeli projekt znajduje się w domyślnym katalogu Apache to drugą linię pomijamy. Ostatnia linia odpowiada za właściwe przepisywanie adresów. Żądanie postaci function.* zostanie przekierowane do odpowiedniego adresu w dokumentacji PHP.
Kiedy tworzymy kolejny projekt konieczne jest skopiowanie pliku .htaccess lub samych reguł, ale nawet pomimo, tego uważam, że opisana metoda daje łatwy dostęp do dokumentacji PHP.
W odpowiedzi na “Manual PHP na żądanie”
… ale także potrafić czytać – znów rusycyzm, ale także umieć (o reszcie nie wspomnę) Pozdrawiam purysta