>  기사  >  백엔드 개발  >  PHP 함수에서 매개변수를 값으로 전달하는 방법은 무엇입니까?

PHP 함수에서 매개변수를 값으로 전달하는 방법은 무엇입니까?

醉折花枝作酒筹
醉折花枝作酒筹원래의
2021-07-29 14:07:533576검색

이전 글에서는 매개변수가 무엇인지, 함수를 생성하는 방법을 알아보았고, 형식 매개변수와 실제 매개변수에 대해 알아보았습니다. 필요하다면 "PHP 함수의 형식 매개변수와 실제 매개변수는 무엇을 의미하나요?"를 읽어보시기 바랍니다. 》. 이번에는 매개변수에 대해 더 자세히 살펴보고 매개변수를 함수에 전달할 때 값에 의한 전달을 소개합니다.

함수에 매개변수를 전달하는 방법에는 값 전달, 참조 전달, 기본 매개변수 및 가변 길이 매개변수의 네 가지 방법이 있습니다. 오늘은 값으로 매개변수를 전달하는 방법을 소개하겠습니다.

먼저 작은 예를 살펴보겠습니다.

<?php
  function swap($a, $b){
    echo &#39;函数内,交换前 $a = &#39;.$a.&#39;, $b = &#39;.$b.&#39;<br>&#39;;
    $temp = $a;
    $a = $b;
    $b = $temp;
    echo &#39;函数内,交换后 $a = &#39;.$a.&#39;, $b = &#39;.$b.&#39;<br>&#39;;
  }

  $x = 5;
  $y = 7;
  echo &#39;函数外,交换前 $x = &#39;.$x.&#39;, $y = &#39;.$y.&#39;<br>&#39;;
  swap($x, $y);
  echo &#39;函数外,交换后 $x = &#39;.$x.&#39;, $y = &#39;.$y;
?>

출력 결과는

函数外,交换前 $x = 5, $y = 7
函数内,交换前 $a = 5, $b = 7
函数内,交换后 $a = 7, $b = 5
函数外,交换后 $x = 5, $y = 7

입니다. 이 예에서 함수 내부에서는 실제로 값이 교환되지만 함수 외부에서는 값이 변경되지 않는 것을 볼 수 있습니다.

이 작은 예를 통해. 매개변수를 값으로 전달하는 것에 대한 일반적인 이해도 갖고 있는데, 아래에서 자세히 소개하겠습니다.

값으로 전달은 "复制值传递"라고도 알려진 PHP 함수의 기본 값 전달 방법입니다. 이름에서 알 수 있듯이 값 전송 방법은 매개변수의 값을 복사한 다음 이를 함수의 형식 매개변수로 전송합니다. 따라서 함수 내에서 매개변수 값을 조작해도 함수 외부의 매개변수에는 영향을 미치지 않습니다. 따라서 함수가 매개변수의 값을 수정하는 것을 원하지 않으면 값으로 전달할 수 있습니다.

위 예시처럼 함수 내부에서는 실제로 값이 교환되지만, 함수 외부에서는 값이 변하지 않습니다. 따라서 값으로 함수를 전달하는 것은 단지 변수의 복사본을 전달하는 것이라고 말할 수 있습니다. 따라서 함수가 함수의 외부 매개변수에 대해 작동할 수 있도록 하려면 참조 전달을 사용해야 합니다.

당신이 원하는 PHP 지식은 여기에 있습니다 → →php 비디오 튜토리얼

위 내용은 PHP 함수에서 매개변수를 값으로 전달하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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