PHP cli 모드에서 매개변수를 얻는 방법
php가 cli 모드에서 매개변수를 수신하는 방법에는 두 가지가 있습니다
1. argv 배열을 사용하세요
2. getopt 메서드를 사용하세요
1. argv 배열을 사용하세요
예: PHP를 실행하고 세 가지를 전달해야 합니다. 매개변수 (유형=news, is_hot=1, 제한=5)
Create test.php
<?phpprint_r($argv);?>
명령줄에서 실행
php test.php news 1 5
출력:
Array( [0] => test.php [1] => news [2] => 1 [3] => 5)
argv[0]이 현재의 이름임을 알 수 있습니다. 실행된 php 파일이고 argv[1] ~argv[3]은 전달된 매개변수의 값입니다
argv[1]은 type
argv[2]의 값과 같습니다 is_hot
argv[3]의 값과 같습니다 는 Limit 값과 같습니다
이러한 방식으로 전달된 매개변수는 argv 배열을 기반으로 얻을 수 있습니다. 후속 처리 작업을 수행합니다.
단점:
argv 배열을 사용하면 전달된 매개변수를 순서대로 가져올 수 있습니다. 그러나 이를 얻은 후에는 해당 처리를 수행해야 합니다. 위의 예에서 argv[1]은 유형 매개변수에 해당하고, argv[2]는 is_hot 매개변수에 해당하며, argv[3]은 제한 매개변수에 해당해야 합니다. . 그리고 전송 과정에서 매개변수를 잘못된 순서로 쓰면 프로그램 오류가 발생합니다.
예:
<?php$param = array();$param['type'] = $argv[1];$param['is_hot'] = $argv[2];$param['limit'] = $argv[3]; print_r($param);?>
Execute
php test.php news 1 5
출력:
Array( [type] => news [is_hot] => 1 [limit] => 5)
전달 순서가 다르면 얻은 매개변수 값이 달라져 후속 프로그램 오류가 발생합니다.
실행
php test.php 1 5 news
출력:
Array( [type] => 1 [is_hot] => 5 [limit] => news )
따라서 argv 배열에 매개변수를 전달할 때 매개변수가 전달되는 순서에 주의해야 합니다.
2. 명령줄 매개변수 목록에서 옵션을 가져오려면 getopt 메소드
getopt를 사용하세요.
array getopt ( string $options [, array $longopts ] )
매개변수:
options
이 문자열의 각 문자는 수신 스크립트 옵션과 일치하는 옵션 문자로 처리됩니다. 단일 하이픈(-)으로 시작합니다. 예를 들어, 옵션 문자열 "x"는 -x 옵션을 식별합니다. a-z, A-Z 및 0-9만 허용됩니다.
longopts
옵션 배열. 이 배열의 각 요소는 옵션 문자열로 처리되며 두 개의 하이픈(-)이 있는 스크립트에 전달된 옵션과 일치합니다. 예를 들어, 긴 옵션 요소 "opt"는 옵션 -opt를 식별합니다.
옵션에는 다음 요소가 포함될 수 있습니다.
단일 문자(값은 허용되지 않음)
콜론이 뒤에 오는 문자(이 옵션에는 값이 필요함)
문자 뒤에 콜론 두 개가 따라옴(이 옵션의 값은 선택 사항임) )
Options 값은 문자열 다음의 첫 번째 매개변수입니다. 값 앞에 공백이 있어도 상관 없습니다.
options와 longopts의 형식은 거의 동일합니다. 유일한 차이점은 longopts는 옵션의 배열이어야 하고(각 요소는 옵션임) 옵션에는 문자열이 필요하다는 것입니다(각 문자는 옵션임).
전달된 값의 구분 기호에는 공백이나 =를 사용할 수 있습니다.
선택적 값은 공백을 구분 기호로 허용하지 않으며 =만 구분 기호로 사용할 수 있습니다.
반환 값
이 함수는 옵션/매개변수 쌍을 반환하고 실패 시 FALSE를 반환합니다.
옵션 구문 분석은 옵션이 아닌 첫 번째 발견 시 종료되며, 그 이후의 모든 항목은 삭제됩니다.
1. 옵션 인스턴스 사용
a, b, c는 필수 값입니다.
d는 선택 값입니다.
e는 허용되지 않는 값입니다.
<?php$param = getopt('a:b:c:d::e'); print_r($param);?>
Execute
php test.php -a 1 -b 2 -c 3 -d=4 -e 5
출력:
Array( [a] => 1 [b] => 2 [c] => 3 [d] => 4 [e] => )
2. , is_hot은 필수 값입니다.
limit는 선택 값입니다.expire는 허용되지 않는 값입니다.
<?php$longopt = array( 'type:', 'is_hot:', 'limit::', 'expire');$param = getopt('', $longopt); print_r($param);?>
Execute
php test.php --type news --is_hot 1 --limit=10 --expire=100
출력:
Array( [type] => news [is_hot] => 1 [limit] => 10 [expire] => )
3. 옵션이 아닌 첫 번째 항목을 찾고 후속 인스턴스는 무시합니다.
<?php$longopt = array( 'type:', 'is_hot:', 'limit::', 'expire');$param = getopt('', $longopt); print_r($param);?>
Execute
php test.php --type news --is_hots 1 --limit=10 --expire=100
출력:
Array ( [type] => news )
is_hots는 옵션 값이 아니기 때문에(is_hot이 정의됨) 여기 이후의 모든 매개변수는 삭제됩니다.
요약: argv 배열을 사용하여 매개변수를 전달하면 방법이 간단하고 구현하기 쉽습니다. 매개변수의 순서는 틀릴 수 없으며 매개변수를 얻은 후에 해당 처리를 수행해야 합니다. getopt 메소드를 사용하면 매개변수 이름을 사용할 수 있으며, 매개변수의 순서는 상대적으로 표준화되어 임의적일 수 있습니다. (권장)
이 글에서는 php cli 모드에서 매개변수를 얻는 방법을 소개합니다. 더 많은 관련 내용은 php 중국어 홈페이지를 참고해주세요.
관련 권장 사항:
PHP 코드를 통해 배열의 지정된 키 값을 재귀적으로 얻는 방법위 내용은 PHP cli 모드에서 매개변수를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

JWT는 주로 신분증 인증 및 정보 교환을 위해 당사자간에 정보를 안전하게 전송하는 데 사용되는 JSON을 기반으로 한 개방형 표준입니다. 1. JWT는 헤더, 페이로드 및 서명의 세 부분으로 구성됩니다. 2. JWT의 작업 원칙에는 세 가지 단계가 포함됩니다. JWT 생성, JWT 확인 및 Parsing Payload. 3. PHP에서 인증에 JWT를 사용하면 JWT를 생성하고 확인할 수 있으며 사용자 역할 및 권한 정보가 고급 사용에 포함될 수 있습니다. 4. 일반적인 오류에는 서명 검증 실패, 토큰 만료 및 대형 페이로드가 포함됩니다. 디버깅 기술에는 디버깅 도구 및 로깅 사용이 포함됩니다. 5. 성능 최적화 및 모범 사례에는 적절한 시그니처 알고리즘 사용, 타당성 기간 설정 합리적,

문자열은 문자, 숫자 및 기호를 포함하여 일련의 문자입니다. 이 튜토리얼은 다른 방법을 사용하여 PHP의 주어진 문자열의 모음 수를 계산하는 방법을 배웁니다. 영어의 모음은 A, E, I, O, U이며 대문자 또는 소문자 일 수 있습니다. 모음이란 무엇입니까? 모음은 특정 발음을 나타내는 알파벳 문자입니다. 대문자와 소문자를 포함하여 영어에는 5 개의 모음이 있습니다. a, e, i, o, u 예 1 입력 : String = "Tutorialspoint" 출력 : 6 설명하다 문자열의 "Tutorialspoint"의 모음은 u, o, i, a, o, i입니다. 총 6 개의 위안이 있습니다

이 튜토리얼은 PHP를 사용하여 XML 문서를 효율적으로 처리하는 방법을 보여줍니다. XML (Extensible Markup Language)은 인간의 가독성과 기계 구문 분석을 위해 설계된 다목적 텍스트 기반 마크 업 언어입니다. 일반적으로 데이터 저장 AN에 사용됩니다

정적 바인딩 (정적 : :)는 PHP에서 늦은 정적 바인딩 (LSB)을 구현하여 클래스를 정의하는 대신 정적 컨텍스트에서 호출 클래스를 참조 할 수 있습니다. 1) 구문 분석 프로세스는 런타임에 수행됩니다. 2) 상속 관계에서 통화 클래스를 찾아보십시오. 3) 성능 오버 헤드를 가져올 수 있습니다.

PHP의 마법 방법은 무엇입니까? PHP의 마법 방법은 다음과 같습니다. 1. \ _ \ _ Construct, 객체를 초기화하는 데 사용됩니다. 2. \ _ \ _ 파괴, 자원을 정리하는 데 사용됩니다. 3. \ _ \ _ 호출, 존재하지 않는 메소드 호출을 처리하십시오. 4. \ _ \ _ get, 동적 속성 액세스를 구현하십시오. 5. \ _ \ _ Set, 동적 속성 설정을 구현하십시오. 이러한 방법은 특정 상황에서 자동으로 호출되어 코드 유연성과 효율성을 향상시킵니다.

PHP와 Python은 각각 고유 한 장점이 있으며 프로젝트 요구 사항에 따라 선택합니다. 1.PHP는 웹 개발, 특히 웹 사이트의 빠른 개발 및 유지 보수에 적합합니다. 2. Python은 간결한 구문을 가진 데이터 과학, 기계 학습 및 인공 지능에 적합하며 초보자에게 적합합니다.
