아직 함수 반환 값에 대해 잘 모르겠습니다. 다음 예에서는 jj()를 호출하면 1이 직접 출력됩니다. 왜 함수 반환 값이 사용되지 않는 것 같나요? 여기서 이 함수를 호출하면 실행됩니다. $a만 출력하면 되나요? 왜 여전히 반환 값과 관련이 있습니까?
<code> function jj(){ $a=1; echo $a; } $b=jj(); var_dump($b);</code>
아직 함수 반환 값에 대해 잘 모르겠습니다. 다음 예에서는 jj()를 호출하면 1이 직접 출력됩니다. 왜 함수 반환 값이 사용되지 않는 것 같나요? 여기서 이 함수를 호출하면 실행됩니다. $a만 출력하면 되나요? 왜 여전히 반환 값과 관련이 있습니까?
<code> function jj(){ $a=1; echo $a; } $b=jj(); var_dump($b);</code>
인쇄는 화면에만 표시됩니다. 이 값을 사용하는 경우 다른 곳에서 받으려면 반드시 return을 사용해야 합니다. 따라서 여기서 함수는 아무것도 반환하지 않고 단지 1을 인쇄하므로 변수 b는 어떤 값도 얻지 못하므로 비어 있습니다.
함수에 return 문이 없기 때문에 실행 후 null이 반환됩니다.
함수 실행 프로세스:
$b = jj(); jj()를 호출하여 $a에 값을 할당하고 $a를 인쇄하며 반환하지 않음(반환은 null임)
var_dump $b, $b에는 jj()의 반환 값이 할당되므로 null입니다
전체 실행이 완료되면 출력된 1($a 값), null($b 값)이 남습니다
<code>function jj(){ $a=1; echo $a; return $a; } $b=jj(); var_dump($b);</code>
아마도 이것이 예상한 결과일 것입니다
jj 함수는 반환 없이 $a를 직접 출력하므로 $b는 비어 있습니다
<code>$b=jj();//输出1 直接调用函数jj var_dump($b);//输出null 打印函数?并没用return值 加了return之后的结果如下: 1 D:\WWW\demo\demo\demo.php:15:int 1 </code>
echo는 직접 출력이고 return은 호출된 위치를 반환합니다