찾다
백엔드 개발PHP 튜토리얼PHP 마스터 | PHP의 어레이 연산자 : 흥미롭지 만 말을 덜 말합니다

PHP 배열 연산자에 대한 자세한 설명 : 거의 알려지지 않은 팁

PHP 연산자는 산술, 할당, 비트 작동, 비교, 오류 제어, 실행, 증분/감소, 로직, 문자열, 배열 및 유형 연산자의 7 가지 범주로 나눌 수 있습니다. 이 기사는 어레이 연산자에 중점을두고 배열과 함께 사용될 때 다른 연산자의 동작을 다룹니다. PHP Master | Array Operators in PHP: Interesting but Less Spoken

키 포인트

PHP 배열 연산자는 노조, 평등, 정체성, 불평등 및 비 식별력이 포함됩니다. -동일한.

Union Operator ()는 키에 따라 두 개의 배열을 병합하여 두 번째 배열의 첫 번째 배열에 이미 존재하는 키를 무시합니다. 그러나 노동 조합은 배열 값을 기반으로한다는 것이 종종 오해되지만 실제로는 배열 키를 기반으로합니다.

Identity 연산자 (===)는 모든 해당 값에 대한 요소 수, 키 값 쌍, 요소 순서 및 데이터 유형 측면에서 두 배열이 동일한 지 확인합니다. 그러나 어레이 키의 경우 키가 정수이고 다른 배열에서 키와 비슷한 정수 문자열 표현이 있으면 느슨하게 일치합니다.
    배열 연산자 이외의 연산자를 배열에 적용 할 때 PHP는 다르게 작동합니다. 예를 들어, 산술 연산자를 배열에 적용 할 때 PHP는 치명적인 오류가 발생합니다. 증분/감소 연산자는 배열에 영향을 미치지 않습니다.
  • 어레이 연산자 공식 문서는 각 배열 연산자를 간단히 설명하므로 때로는 사람들이 각 운영자의 예상 결과를 이해하기가 어렵습니다. 각 배열 연산자를 면밀히 살펴보고 기능을 명확하게 이해할 수 있습니다. 이 모든 연산자는 이진이므로 각 연산자는 두 개의 배열에서 정확하게 작용 함을 의미합니다.
  • 어레이 유니언 먼저 Union Operator ()는 배열의 키에 따라 두 배열의 Union을 제공합니다. 느슨한 키 매칭을 수행하며 두 번째 배열의 동등한 키가 이미 첫 번째 배열에 존재하는 경우 두 번째 배열의 모든 키는 무시됩니다. 두 번째 배열의 나머지 키 (및 해당 값)는 첫 번째 배열에 추가됩니다.
  • 첫 번째 print_r ()의 경우 $ array2의 첫 3 가지 요소는 이미 $ array1에 존재하는 키가 있으므로 결과 배열에서 'd', 'e'및 'f'가 무시됩니다. 두 번째 print_r ()의 경우 $ array1의 모든 키는 이미 $ array2에 존재하므로 모든 요소가 무시됩니다. 느슨한 일치 동작은 완전히 예상치 못한 결과를 제공 할 수 있지만 최적화 및 느슨한 코딩을위한 흥미로운 기회를 제공합니다.
사람들은 종종 노조가 배열 값을 기반으로한다는 것을 오해하지만 실제로이 운영자는 어레이 키의 노조를 구현합니다. Value-Based Union의 경우 Array_Merge () 및 Array_unique ()를 조합하여 사용할 수 있습니다.
<?php
$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f', 'g', 'h', 'i');
print_r($array1 + $array2);
print_r($array2 + $array1);
?>
<code>Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => g
    [4] => h
    [5] => i
)
Array
(
    [0] => d
    [1] => e
    [2] => f
    [3] => g
    [4] => h
    [5] => i
)</code>
배열 평등 평등 연산자 (==)는 두 배열이 비슷한 지 확인합니다. 첫 번째 배열의 모든 키 값 쌍이 두 번째 배열에 동등한 키 값 쌍이 있으면 연산자가 true를 반환합니다. 값과 키와 느슨하게 일치하고 요소의 순서를 무시합니다.

두 배열의 요소는 순서대로 있지만 동일한 값은 각 배열에서 유사한 키에 바인딩됩니다. 그러나 두 배열 모두 다른 키 값 쌍이 있기 때문에 다음 두 가지는 동일하지 않습니다.

<?php
$array1 = array('0' => 'a', '1' => 'b', '2' => 'c', '3' => 'd');
$array2 = array(false => 'e', 1 => 'f', 2 => 'g', 3 => 'h', 4 => 'i');
print_r($array1 + $array2);
?>
불평등 한 연산자 (! = 또는 & lt; & gt;)는 두 어레이가 비슷하지 않은지 확인하고 동등한 연산자에게 완벽한 반의어인지 확인합니다. 평등 연산자는 False가있는 것을 반환 하고이 연산자는 True를 반환하고 그 반대도 마찬가지입니다.
<code>Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => i
)</code>

배열 ID Identity 연산자 (===)는 두 배열이 동일한 지 확인합니다. 다음 조건을 충족하면 두 배열이 동일합니다.
<?php
$union = array_unique(array_merge($array1, $array2));
print_r($union);
?>
<code>Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => d
    [4] => e
    [5] => f
    [6] => g
    [7] => h
    [8] => i
)</code>
는 같은 수의 요소를 가지고 있습니다 는 동일한 키-값 쌍 를 가지고 있습니다 는 동일한 요소 순서 모든 해당 값의 데이터 유형은 동일합니다.
<code>bool(true)</code>
그러나 어레이 키의 경우 키가 정수 인 경우 다른 배열에서 키와 비슷한 정수 문자열 표현이 있으면 Identity 연산자가 느슨하게 일치합니다. 이 연산자는 플로팅 포인트 번호와 String 키와 엄격하게 일치합니다. PHP 매뉴얼은이 차이를 명시하지 않습니다.

  • 비 식별 연산자 (! ==)는 두 어레이가 다른지 확인합니다. 다시 말하지만,이 연산자는 ID 연산자와 정확히 반대입니다. 즉, 두 배열이 동일하면이 연산자는 False를 반환합니다.
  • 다른 연산자와 배열을 사용하십시오 위의 연산자 이외의 연산자를 배열에 적용 할 때 PHP 동작이 다릅니다. 다음은 이러한 연산자의 목록과 배열에 적용 할 때 어떻게 행동하는지입니다.
  • <:> 치명적인 오류 : 예상치 못한 피연산자 유형
  • 다음 연산자가 배열에 적용될 때 PHP는 치명적인 오류를 발행합니다.
  • 비트 작동 비 기능 (~) 산술 음성 연산자 (-) 산술 뺄셈 연산자 (-) 산술 곱셈 연산자 (*) 산술 부서 연산자 (/)
배열을 정수로 처리하십시오 다음 연산자와 함께 사용하면 배열이 정수로 처리됩니다. 빈 배열 (요소 없음)은 int (0)로 간주되고 비어 있지 않은 배열은 int (1)로 간주됩니다.

    논리적 비 (!)는 빈 배열에 대해 true를 반환하고 피연산자 배열에 하나 이상의 요소가있는 경우 False를 반환합니다.
  • 비트 및 (&&) 반환 1 두 피연산자가 비어 있지 않은 경우;
  • 비트 또는 (|) 두 피연산자가 비어 있으면 0을 반환합니다.
  • 비트 독점 (^)은 두 배열이 비어 있거나 비어 있지 않은 경우 0을 반환합니다. 배열 중 하나가 비어 있으면 1을 반환하십시오.
  • 왼쪽 시프트 연산자 (& lt; & lt;)를 사용하여 배열을 왼쪽 n 단계로 이동하십시오.
  • 오른쪽 시프트 연산자 (& gt; & gt;)는 오른쪽으로 이동한다는 점을 제외하고 왼쪽 시프트와 유사하게 동작합니다.
  • 모듈 (%)은 두 배열 모두 비어 있지 않으면 true를 반환합니다. 두 번째 배열이 비어 있으면 "0으로 나눈"오류가 방출됩니다. 첫 번째 배열이 비어 있으면 0 (0 % 1)이 반환됩니다.
  • 로지스틱 대 (&& and and)는 배열이 비어 있으면 false를 반환합니다. 두 배열 모두 비어 있지 않으면 true를 반환하십시오.
  • 논리적 또는 (|| 또는 또는)가 비어 있지 않은 경우 true를 반환합니다. 두 배열 모두 비어 있으면 False가 반환됩니다.
  • 두 배열이 비어 있거나 비어 있지 않으면 논리적 xor (xor)는 false를 반환합니다. 그렇지 않으면 배열 중 하나가 비어 있으면 TRUE를 반환합니다.
  • 배열을 bool에 캡처하고, 배열이 비어 있으면 false를 반환하고 그렇지 않으면 true를 반환하십시오.
  • 배열을 문자열로 취급하십시오 두 배열을 연결할 때 문자열 연결 연산자 (.)는 각 배열을 문자열 "어레이"로 취급하고 이러한 문자열을 연결합니다.
  • invalid
  • 증분/감소 연산자 (및 -)는 배열에 영향을 미치지 않습니다.
  • 결론
  • 배열과 함께 사용할 때 PHP 연산자에 대한 실제 문서는 거의 없지만 자세한 내용은 배열 연산자 페이지에서 사용자 제출 한 주석을 볼 수 있습니다. 귀하의 질문과 의견은 여기에서 환영하며 더 자세히 설명해 드리겠습니다.
Fotolia의 사진

PHP 배열 연산자 FAQS (FAQS) PHP의 다른 유형의 배열 연산자는 무엇입니까?

PHP는 Union (), 평등 (==), Identity (===), 불평등 (! = 또는 & lt; & gt;) 및 비 스턴트 평등 (! ==)을 포함한 여러 유형의 배열 연산자를 지원합니다. 이러한 각 연산자는 다른 기능을 수행합니다. 예를 들어, Union Operator ()는 배열을 결합하고 평등 연산자 (==)는 두 배열이 동일인지 확인하고 Identity 연산자 (===)는 두 배열이 동일인지 확인합니다.

Union () 운영자는 PHP에서 어떻게 작동합니까?
<?php
$array1 = array('a', 'b', 'c');
$array2 = array('d', 'e', 'f', 'g', 'h', 'i');
print_r($array1 + $array2);
print_r($array2 + $array1);
?>
PHP의 Union () 운영자는 두 숫자를 하나로 결합합니다. 배열의 결합이 필요하므로 두 배열로 모든 요소를 ​​포함하는 배열을 반환합니다. 배열에 동일한 문자열 키가 있으면 첫 번째 배열의 값이 사용되며 두 번째 배열의 일치 키 값은 무시됩니다.
<code>Array
(
    [0] => a
    [1] => b
    [2] => c
    [3] => g
    [4] => h
    [5] => i
)
Array
(
    [0] => d
    [1] => e
    [2] => f
    [3] => g
    [4] => h
    [5] => i
)</code>
평등 (==)과 정체성 (===) 연산자의 차이점은 무엇입니까?

평등 (==) 연산자는 순서 또는 데이터 유형에 관계없이 두 배열이 동일한 키/값 쌍을 가지고 있는지 확인합니다. 반면에, ID (===) 연산자는 두 배열이 동일한 순서의 동일한 키/값 쌍과 동일한 데이터 유형을 가지고 있는지 확인합니다.

PHP의 불평등 (! = 또는 & lt; & gt;) 운영자는 어떻게 작동합니까?

PHP의 불평등 한 연산자는 두 배열이 동일하지 않은지 확인합니다. 배열이 동일하지 않은 경우 true를 반환하고 배열이 같으면 False를 반환하십시오.

PHP에서 비 식별 (! ==) 연산자의 역할은 무엇입니까?

PHP의 비 식별 (! ==) 연산자는 두 어레이가 다른지 확인합니다. 배열이 동일하지 않으면 true를 반환하십시오.

배열 연산자가 PHP에 결합 될 수 있습니까?

예, 배열 연산자를 PHP의 결합하여보다 복잡한 작업을 수행 할 수 있습니다. 그러나 예상치 못한 결과를 피하기 위해이 작업을 수행 할 때주의하십시오. 결합 된 연산자가 코드의 맥락에서 논리적으로 의미가 있는지 항상 확인하십시오.

어레이에 배열 연산자를 사용하여 특정 값이 포함되어 있는지 확인하는 방법은 무엇입니까?

PHP에서 in_array () 함수를 사용하여 배열에 특정 값이 포함되어 있는지 확인할 수 있습니다. 값이 배열에서 발견되면이 함수는 그렇지 않으면 거짓을 반환합니다.

PHP 배열에서 특정 값을 삭제하는 방법은 무엇입니까?

PHP의 Array_Diff () 함수를 사용하여 배열에서 특정 값을 삭제할 수 있습니다. 이 함수는 배열의 값을 다른 배열의 값과 비교하고 차이를 반환합니다.

PHP에서 배열을 정렬하는 방법은 무엇입니까?

PHP는 Sort (), asort (), ksort () 및 usort ()를 포함하여 배열을 정렬하는 여러 기능을 제공합니다. 이러한 각 기능은 배열을 다른 방식으로 정렬하므로 필요에 가장 적합한 기능을 선택해야합니다.

PHP의 배열 순서를 되돌리는 방법은 무엇입니까?

PHP의 Array_Reverse () 함수를 사용하여 배열의 순서를 반전 할 수 있습니다. 이 함수는 새로운 요소 배열을 역순으로 반환합니다.

위 내용은 PHP 마스터 | PHP의 어레이 연산자 : 흥미롭지 만 말을 덜 말합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

thesecrettokeepingAphp-poweredwebsiterunningsmoothlydlyUnderHeavyloadInvolvesEveralKeyStrategies : 1) ubstractOpCodeCachingWithOpCacheTecescripteExecutionTime, 2) usedatabasequeryCachingwithRedSendatabaseload, 3) LeverAgeCdnslikeCloudforforporerververforporporpin

PHP의 종속성 주입 : 초보자를위한 코드 예제PHP의 종속성 주입 : 초보자를위한 코드 예제May 14, 2025 am 12:08 AM

Code는 코드가 더 명확하고 유지 관리하기 쉽기 때문에 의존성 주입 (DI)에 관심을 가져야합니다. 1) DI는 클래스를 분리하여 더 모듈 식으로 만들고, 2) 테스트 및 코드 유연성의 편의성을 향상시키고, 3) DI 컨테이너를 사용하여 복잡한 종속성을 관리하지만 성능 영향 및 순환 종속성에주의를 기울이십시오. 4) 모범 사례는 추상 인터페이스에 의존하여 느슨한 커플 링을 달성하는 것입니다.

PHP 성능 : 응용 프로그램을 최적화 할 수 있습니까?PHP 성능 : 응용 프로그램을 최적화 할 수 있습니까?May 14, 2025 am 12:04 AM

예, PPAPPLICATIONISPOSSIBLEADESLESTION.1) INVERECINGUSINGAPCUTERODUCEDABASELOAD.2) INCODINCEDEXING, ENGICIONEQUERIES 및 CONNECTIONPOULING.3) 향상된 보드 바이어링, 플로 팅 포르코 잉을 피하는 최적화 된 APPCUTERODECEDATABASELOAD.2)

PHP 성능 최적화 : 궁극적 인 가이드PHP 성능 최적화 : 궁극적 인 가이드May 14, 2025 am 12:02 AM

theKeyStrategiesToSINCINTIFILINTINTIFILINTINTHPPORMATIONPERFORMANCEARE : 1) USEOPCODECACHING-CCHACHETEDECUTECUTINGTIME, 2) 최적화 된 ABESINSTEMENTEMENDSTEMENTEMENDSENDSTATEMENTENDS 및 PROPERINDEXING, 3) ConfigureWebSerVERSLIKENGINXXWITHPMFORBETPERMERCORMANCES, 4)

PHP 의존성 주입 컨테이너 : 빠른 시작PHP 의존성 주입 컨테이너 : 빠른 시작May 13, 2025 am 12:11 AM

aphpdectionenceindectioncontainerisatoolthatmanagesclassdependencies, 향상 Codemodularity, testability 및 maintainability.itactAsacentralHubForCreatingAndingDinjectingDingingDingingdecting.

PHP의 종속성 주입 대 서비스 로케이터PHP의 종속성 주입 대 서비스 로케이터May 13, 2025 am 12:10 AM

대규모 응용 프로그램의 경우 SELLENCIONINGESS (DI)를 선택하십시오. ServicElocator는 소규모 프로젝트 또는 프로토 타입에 적합합니다. 1) DI는 생성자 주입을 통한 코드의 테스트 가능성과 모듈성을 향상시킵니다. 2) Servicelocator는 센터 등록을 통해 서비스를 얻습니다. 이는 편리하지만 코드 커플 링이 증가 할 수 있습니다.

PHP 성능 최적화 전략.PHP 성능 최적화 전략.May 13, 2025 am 12:06 AM

phPapplicationSCanBeoptimizedForsPeedandefficiencyby : 1) ENABLEOPCACHEINPHP.INI, 2) PREPAREDSTATEMENTSWITHPDOFORDATABASEQUERIES 사용

PHP 이메일 검증 : 이메일이 올바르게 전송되도록합니다PHP 이메일 검증 : 이메일이 올바르게 전송되도록합니다May 13, 2025 am 12:06 AM

phpeMailValidationInvoLvestHreesteps : 1) formatValidationUsingRegularexpressionsTochemailformat; 2) dnsValidationToErethedomainHasaValidMxRecord; 3) smtpvalidation, theSTHOROUGHMETHOD, theCheckSiftheCefTHECCECKSOCCONNECTERTETETETETETETWERTETWERTETWER

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

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

뜨거운 도구

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 중국어 버전

SublimeText3 중국어 버전

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

에디트플러스 중국어 크랙 버전

에디트플러스 중국어 크랙 버전

작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기