W zespole, z którym pracuję, mamy starą bazę kodów wykorzystującą funkcje PHP ibase_ * na całym kodzie do komunikowania się z bazą danych. Stworzyliśmy dla niego wrapper, który wykonałby coś innego poza wywołaniem oryginalnej funkcji, a ja dokonałem masowego wyszukiwania-zamiany w całym kodzie, aby upewnić się, że zamiast tego używa się opakowania.Jak wycofać funkcję w PHP?
Teraz, w jaki sposób możemy zapobiec używaniu funkcji ibase_ * w przyszłości?
Najlepiej, chciałbym nadal mieć je dostępne, ale sprawić, aby rzucać NOTICE lub OSTRZEŻENIE, gdy jest używany.
Preferowane jest rozwiązanie w czystym PHP (bez potrzeby kompilowania niestandardowej wersji PHP).
Dziękuję, po opublikowaniu linku, znalazłem dokładnie to, czego potrzebowałem, tutaj: http://no.php.net/manual/en/function.override-function.php#50821 –
Należy pamiętać, że to jest część rozszerzenia APD (debugger). Nie powinieneś używać go w środowisku produkcyjnym, a nawet na maszynie testowej, prawdopodobnie będzie on kolidował z innymi debuggerami (takimi jak Xdebug), więc możesz tego nie chcieć używać. – troelskn
@troelskn: masz rację. Każdy inny pomysł? –