PHP

서린·2024년 3월 12일
0

greenstudy

목록 보기
14/44
post-thumbnail

📌 PHP(Hypertext Preprocessor)란?

  • 웹 페이지 개발에 특화 된 프로그래밍 언어
  • 컴파일 과정을 거치지 않고 실시간으로 텍스트를 분석하며 실행(인터프리터)
  • 상대적으로 컴파일 언어보다 실행 속도가 느리나 PHP 8.0부턴JIT 컴파일을 지원해 실행 속도가 크게 개선
  • PHP 7 부터 모던PHP라고 하며, PHP 5 이하 버전을 레거시PHP라고 함
  • PHP 5.3에서 OOP에 관한 기능과 문법이 추가되고, PHP 7 에 와서는 객체의 경우 Call by reference가 디폴트가 되는 등 좀 더 확실한 OOP 언어에 가까워 짐

📌 PHP의 장점

  • 웹 개발에 필요한 관련 함수들이 내장되어 있어서 개발 생산성이 뛰어나며, HTML 템플릿을 지원하여 쉽게 웹서버를 구축 가능
  • PHP는 무상태성(Stateless)로 요청마다 프로그램을 로딩하므로 오류에 덜 민감하며 메모리 누수를 방지
  • PHP 파일을 실행할 때마다 파일 내용을 확인 후, 변경이 없으면 캐시파일을 실행하고, 변경이 있는 부분만 해석한 뒤 다시 캐시로 저장 후 실행 하는 방식이라 배포작업 시 해당 파일만 업로드 하면 되므로 배포 작업이 매우 간편
  • 타 언어는 프로젝트 규모가 커지면 빌드 시간이 늘어 배포에 시간에 오래 걸리나, PHP는 빌드가 필요 없음

📌 PHP의 단점

  • 내장 함수나 인자 명명규칙 등 일관성이 부족하고, PHP의 태생이 템플릿 언어로 시작해 프로그래밍 언어로 바뀌다보니 전체적으로 잘 설계된 언어는 아님
    (PHP 7.0 이후 버전업을 통해 계속 개선 중)
  • PHP의 무상태성(Stateless)로 인해 요청마다 프로그램을 로딩하므로 프레임워크와 같이 한번 전부 불러오고 사용해야 하는 것들도 매번 로딩되어 성능 저하가 나타 날 수 있음
  • PHP 7.4이하 버전에서의 단점
    • 정의되지 않은 변수(undefined)가 사용 가능
    • 예외처리에 일관성이 없어 예외처리를 해야할 요소에 E_WARNING 등 경로로 처리되어 해당 오류를 컨트롤 할 수 없는 상황이 발생
  • PHP 5.X 버전대 이하에서의 단점
    • 현재 PHP의 안좋은 이미지를 가지게 된 시기
    • 2004년 배포되어 PHP 7버전이 나온 2015년까지 오랫동안 5버전에서 머무름
    • 특히 PHP 5.4.X는 보안 이슈가 다량 존재
    • 이때, PHP를 사용하던 대다수의 기업들이 타 언어로 전향

📌 PHP 개발시 주의사항

  • PHP의 나쁜 이미지는 오랫동안 PHP 5버전대에서 머무른 이유도 있지만, 새로운 지식(OOP나 개발규칙 등)을 받아들이지 않은 채 과거의 개발 스타일 그대로 개발을 하는 개발자의 탓도 크므로, PHP 코딩 표준안을 잘 치켜 개발할 필요가 있음
  • PHP 코딩 표준안(PHP The Right Way)
    한국어 사이트

📌 PHP 주석, 출력

  • 한줄 주석
//
  • 여러줄 주석
/**
*
*
*/
  • 출력
    • echo : 현업에서 가장 많이 사용 - 구문
      echo "안녕, php";
    • print : 단순 출력, 현업에서는 잘 사용안함 - 함수
      print("프린트로 안녕");
    • var_dump() : 출력하고자 하는 값, 값의 상세정보까지 출력, 코딩 중간중간에 확인하는 용도
      var_dump("바덤프 안녕"); 
profile
개발 일기 ( •̀ ω •́ )✧

0개의 댓글

관련 채용 정보