초기의 PHP는 프로그래밍 언어가 아니었다. 그건 마치 AutoHotkey 같은 것을 프로그래밍 언어라고 부르지 않는 것과 마찬가지다. PHP(Personal Home Page)라는 이름에서 알 수 있듯 개인 홈페이지를 만들기 위한 도구(Tool)였다.
그렇기에 초기 PHP는 일관성이 떨어지고, 여러 언어의 특성들이 마구잡이로 섞인 종잡기 힘든 물건이었다. 그러던 PHP가 언제부터인가 프로그래밍 언어의 역할을 자각하기 시작했다. 하지만 하위 호환성이 늘 발목을 붙잡았다. 답답하리만큼 PHP는 과거의 잔재에 사로잡혀 더디게 나아갔다.
그러던 PHP가 2009년 5.3 발표 이후 급격히 변하기 시작했다. 특히 PHP 자체 보다 주변을 둘러싼 생태계(Ecosystem)가 급변했다. 이런 급변은 약 80%에 달하는 시장 점유율도 한 원인이겠지만, PHP 자체가 이제 꽤나 쓸만한 프로그래밍 언어로 진화하기 시작했다는 반증이다.
이런 사실에 공감하지 못하는 개발자도 많겠지만, PHP 초기의 잘 못 된 스타일을 배제하고 5.3 이후의 현대적인 방법으로만 PHP를 사용한다면 이제는 PHP도 괜찮은 프로그래밍 언어가 됐다고 말하고 싶다. 이런 낡고 잘 못 된 스타일을 버리고, 현대적인 방법으로 PHP를 사용하는 것을 ‘Modern PHP‘라고 부른다.
어떤 개발자는 프로그래밍 언어보다 사용자가 더 문제라 말하기도 한다. 공감한다. 아직까지 PHP 5.2 이전 스타일을 사용하는 개발자 많은 것이 사실이다. 이 점은 국내 PHP 개발자들이 반성해야 할 부분이다. 깃헙에서 해외 개발자들의 PHP 소스 코드를 본 적이 있는가? PHP 5.2 이전 스타일만을 사용한 PHP 개발자라면 마치 다른 언어로 개발한 소스코드를 읽는 기분이 들지도 모른다. 그만큰 과거(Legacy PHP)과 현재(Modern PHP)의 간극은 크다.
PHP는 진화하고 있다. 하지만 국내 PHP 개발자 문화의 진화 속도는 이를 못 따라 잡고 있다. 지금이라도 늦지 않았다. 보다 많은 국내 PHP 개발자들이 Modern PHP를 배우고 활용했으면 한다.