PHP 배열은 값 또는 참조로 전달됩니까?

青灯夜游
풀어 주다: 2023-03-17 18:06:02
원래의
3288명이 탐색했습니다.

PHP 배열은 값으로 전달됩니다. PHP 배열 전송은 값 전송입니다. 함수를 호출할 때 PHP 배열을 형식 매개변수에 실제 매개변수로 할당하고 함수에서 이를 수정해도 배열 자체에는 영향을 미치지 않습니다. 이는 이 프로세스의 전송이 값 전송임을 나타냅니다. 배열 변수는 이 배열 자체에 대한 참조를 가리키지 않습니다.

PHP 배열은 값 또는 참조로 전달됩니까?

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 8 버전, DELL G3 컴퓨터

PHP 배열은 값으로 전달됩니다.

PHP에서 전달되는 배열은 참조 전달이 아닌 값 전달입니다. .

함수 호출 시에는 PHP 배열을 실제 매개변수로 형식 매개변수에 할당하고, 함수에서 수정해도 배열 자체에는 영향을 미치지 않습니다.

이 프로세스의 전송은 값에 의한 것임을 설명합니다. 배열 변수는 배열 자체에 대한 참조가 아니며, PHP 배열 자체는 값의 형태로 존재하며 형식 매개변수는 배열의 복사본입니다.

이것은 다른 언어(예: c, Js 등)와 매우 다르기 때문에 주목할 가치가 있습니다!

예제는 다음과 같습니다.

<?php header("Content-type:text/html;charset=utf-8"); $arr = array( &#39;name&#39; => &#39;corn&#39;, &#39;age&#39; => &#39;24&#39;, ); var_dump($arr); test_arr($arr); function test_arr($arr){ $arr[&#39;name&#39;] = &#39;qqyumidi&#39;; } var_dump($arr); ?>
로그인 후 복사

PHP 배열은 값 또는 참조로 전달됩니까?

값을 다시 할당하더라도 원래 배열 자체에는 영향을 미치지 않는 것을 볼 수 있습니다.

js 코드는 다음과 같습니다.

var arr = new Array(&#39;corn&#39;, &#39;24&#39;); test_arr(arr); function test_arr(arr){ arr[0] = &#39;qqyumidi&#39;; } console.log(arr); //result:["qqyumidi", "24"]
로그인 후 복사

PHP 배열은 값 또는 참조로 전달됩니까?

PHP에서 값 전송을 위해 참조 전송 효과를 사용해야 하는 경우 형식 매개변수 앞에 주소 문자&를 추가할 수 있습니다.

<?php header("Content-type:text/html;charset=utf-8"); $aa = 100; echo "原变量值:".$aa; test_vars($aa); function test_vars(&$aa){ $aa = 200; } echo "<br>修好后:".$aa; //result: 200 ?>
로그인 후 복사

PHP 배열은 값 또는 참조로 전달됩니까?

설명:

PHP에서는 문자열, 정수, 부동 소수점, 배열 등 대부분의 변수 유형이 값 유형인 반면 클래스 및 객체는 참조 유형이므로 비용을 지불해야 합니다. 이것에 주의.

추천 학습: "PHP 비디오 튜토리얼"

위 내용은 PHP 배열은 값 또는 참조로 전달됩니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!