>백엔드 개발 >PHP 튜토리얼 >PHP 스크립트가 명령줄에서 실행되고 있는지 아니면 HTTP를 통해 실행되고 있는지 확인하는 방법은 무엇입니까?

PHP 스크립트가 명령줄에서 실행되고 있는지 아니면 HTTP를 통해 실행되고 있는지 확인하는 방법은 무엇입니까?

Barbara Streisand
Barbara Streisand원래의
2024-11-15 18:33:03896검색

How to Determine if a PHP Script is Running on the Command Line or via HTTP?

PHP에서 스크립트 실행 모드 결정

PHP 스크립트가 명령줄 또는 HTTP를 통해 실행되는지 결정하는 것은 다양한 목적에서 매우 중요합니다. 출력 형식과 같은. 역사적으로 SERVER['argc'] 변수를 확인하는 것이 표준적인 접근 방식으로 간주되었습니다. 그러나 이 방법은 명령줄 실행 시에도 SERVER['argc']를 채우기 때문에 Apache 2.0 핸들러 서버 API를 사용할 때 신뢰할 수 없는 것으로 판명되었습니다.

권장되고 더 강력한 방법은 php_sapi_name() 함수를 활용하는 것입니다. . 웹 서버와 PHP 사이의 인터페이스 유형을 나타내는 문자열을 반환합니다. 예는 다음과 같습니다:

  • 명령줄 실행을 위한 "cli"
  • Apache 2.0 핸들러 서버 API 실행을 위한 "apache2handler"

예 코드:

문서 참고:

php_sapi_name() 함수 문서는 추가 정보를 제공합니다:

  • 가능한 반환 값: 완전하지는 않지만 함수는 다음을 반환할 수 있습니다. 다양한 서버 API를 나타내는 "apache," "cgi," "nsapi" 및 "tux"와 같은 값.
  • PHP >= 4.2.0: PHP에서는 사전 정의된 상수를 도입했습니다. , PHP_SAPI는 php_sapi_name()과 동일한 값을 보유합니다.

위 내용은 PHP 스크립트가 명령줄에서 실행되고 있는지 아니면 HTTP를 통해 실행되고 있는지 확인하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.