주요 차이점 : PHP는 웹 개발에서 주로 구현되는 서버 측 스크립팅 언어입니다. 그러나 범용 프로그래밍 언어로 사용할 수 있습니다. PHP4와 PHP5는 PHP의 두 가지 버전입니다. PHP4는 2000 년 5 월 22 일에 릴리스되었습니다. 2004 년 7 월 13 일에 PHP5가 릴리스되었습니다. 그것은 Zend Engine II에 의해 구동되었습니다. 이것은 PHP4보다 향상된 기능으로 다양한 새로운 기능을 포함하고 있습니다.
PHP는 오픈 소스, 서버 측 HTML 임베디드 스크립팅 언어입니다. 기본적으로 다른 CGI 프로그램에서 수행 할 수있는 작업은 모두 수행 할 수 있지만 주로 동적 웹 페이지를 만드는 데 사용됩니다. 주요 이점은 여러 유형의 데이터베이스와 호환된다는 것입니다. 또한 PHP는 IMAP, SNMP, NNTP, POP3 또는 HTTP를 사용하여 네트워크에서 대화 할 수 있습니다.
PHP에는 명령 행 인터페이스 기능이 포함되어 있으며 독립형 그래픽 응용 프로그램에서 사용할 수 있습니다. PHP 명령은 데이터를 처리하기 위해 외부 파일을 호출하는 것이 아니라 HTML 소스 문서에 직접 포함될 수 있습니다. HTML 문서에서 PHP 스크립트는 특별한 PHP 태그로 묶여 있습니다. 이러한 태그 때문에 프로그래머는 HTML을 출력하기 위해 많은 양의 코드를 사용하지 않고 HTML과 PHP를 번갈아 사용할 수 있습니다. 또한 PHP가 서버에서 실행되므로 클라이언트는 PHP 코드를 볼 수 없습니다.
2004 년 7 월 13 일 PHP5가 발표되었습니다. 그것은 Zend Engine II에 의해 구동되었습니다. 이것은 PHP4보다 개선되었으며 객체 지향 프로그래밍, PDO (PHP Data Objects) 확장 및 다양한 성능 향상을위한 향상된 지원과 같은 다양한 새로운 기능을 포함했습니다. PDO 확장은 데이터베이스에 액세스하기위한 가볍고 일관된 인터페이스를 정의합니다. 후기 정적 바인딩이 버전 5.3에 추가되었습니다. PHP5는 이전 버전의 PHP와 역 호환되도록 설계되었으므로 PHP4에서 PHP5로 변환하는 동안 기능이 거의 손상되지 않아야합니다.
PHP4와 PHP5의 차이점은 다음과 같습니다.
- PHP5는 register_globals, magic quotes 및 안전 모드를 제거했습니다. 이것은 register_globals가 런타임 데이터 주입을 의도적으로 허용하여 보안상의 허점을 열었고 마법 인용 부호를 사용하는 것이 예측할 수없는 성질을 가졌기 때문입니다.
- PHP4는 젠드 엔진 1.0에 의해 구동되었고 PHP5는 젠드 엔진 II에 의해 구동되었습니다.
- PHP5는 마법의 따옴표를 addslashes () 함수로 대체하여 문자를 이스케이프 처리합니다.
- PHP4는 프로 시저 언어에 가깝지만 PHP5는 객체 지향적입니다.
- PHP5에서 클래스를 Abstract로 선언 할 수 있습니다.
- PHP5는 정적 메서드와 속성을 통합합니다.
- PHP5는 __autoload ()라는 특수 함수를 도입했습니다.
- PHP5는 클래스 또는 메소드를 Final로 선언 할 수 있습니다.
- PHP5에서는 __call, __get, __set 및 __toString과 같은 여러 가지 방법을 소개합니다.
- PHP5에는 공개, 비공개 및 보호의 세 가지 수준의 가시성이 있습니다.
- PHP5에서는 예외가 도입되었습니다.
- PHP4에서는 객체를 포함하여 모든 것이 값으로 전달되었습니다. PHP5에서는 모든 객체가 참조로 전달됩니다.
- PHP5는 인터페이스를 소개합니다. 인터페이스에 정의 된 모든 메소드는 public이어야합니다.
- PHP5는 'E_STRICT'로 정의 된 새로운 오류 수준을 도입했습니다.
- PHP5는 SimpleXML, DOM 및 XSL, PDO 및 해시와 같은 새로운 기본 확장을 도입했습니다.
- PHP5는 새로운 기능을 소개합니다.
- PHP5는 몇 가지 새로운 예약 키워드를 소개합니다.
- PHP5는 액세스 지정자, 상속 등과 같은 php4보다 추가적인 OOP 개념을 포함합니다.
- PHP5는 현재의 컨텐트 관리 시스템에 대한 향상된 지원을 포함합니다.
- PHP5는 감소 된 RAM 소비를 포함합니다.
- PHP5는 PHP 스크립트의 취약점 악용에 대비하여 향상된 보안 기능을 제공합니다.
- PHP5는 새로운 기능과 확장을 통해보다 쉬운 프로그래밍을 소개합니다.
- PHP5는 MySQL 4.1 이상을 사용하는 개발자를 위해 MySQLi라는 새로운 MySQL 확장을 도입했습니다.
- PHP5에서 SQLite는 PHP와 번들되었습니다.
- PHP5는 웹 서비스와의 상호 운용성을위한 새로운 내장 SOAP 확장을 도입했습니다.
- PHP5는 PHP 객체로 XML에 쉽게 액세스하고 조작 할 수있는 새로운 SimpleXML 확장을 도입했습니다. 또한 DOM 확장과 인터페이스 할 수도 있고 그 반대 일 수도 있습니다.
- PHP5에서는 스트림에서 저수준 소켓 작업에 액세스하는 기능을 포함하여 스트림이 크게 향상되었습니다.