이 기사에서 공유한 내용은 PHP 변수가 정의되는 방법과 PHP가 작동하는 방법에 대한 것입니다. 이 내용은 도움이 필요한 친구들에게 큰 도움이 되기를 바랍니다.
1. 변수 정의:
우리가 일반적으로 배우는 것은 변수가 저장 공간과 그 안에 있는 데이터에 대한 "식별자"를 나타낸다는 것입니다.
변수 이름은 변수 값을 가리킵니다
더 깊게 말하면, 변수는 메모리 영역을 가리킵니다
2. 도면 분석 방법을 통한 변수의 작동 원리 - 메모리 공간
<?php //php引用变量:不同变量名指向同一地址。 //定义一个变量a,此时内存开辟了一块区域,$a指向该区域。 $a = 100; var_dump($a); //int 100 //定义变量b,将a变量的值赋值给b,此时该区域有两个变量($a和$b)指向。 $b = $a; var_dump($b); //int 100 //修改$a变量的值,php变量具有Copy On Write的特性,所以会复制并重写a所指向的区域值,此时a和b分别指向不同区域。 $a = 10; var_dump($a); //int 10 var_dump($b); //int 100 //------------------------------------------------------------------ $c = 100; $d = &$c; $c = 10; var_dump($c); //int 10 var_dump($d); //int 10 //当引用指向时,php变量不在具有COW特性,且指向同一内存区域。 //* unset()只能消除变量的引用,不能删除其内存分配的空间 //------------------------------------------------------------------ /* 例题: 写出如下程序的输出结果: <?php $data = ['a','b','c']; foreach($data as $key=>$val){ $val = &$data[$key]; } 问:最终$data的值是多少? */ $data = ['a','b','c']; foreach($data as $key=>$val){ $val = &$data[$key]; print_r($data); } /* 1.$key = 0, $val = 'a', $val = &$d[0] =>'a' $data = ['a','b','c']; 2.$key = 1, $val = 'b', =>$d[0] $val = &$d[1] =>'b' $data = ['b','b','c']; 1.$key = 2, $val = 'c', =>$d[1] $val = &$d[2]=>'c' $data = ['b','c','c']; */
관련 권장 사항:
PHP에서 파일 속성을 가져오는 방법(코드 포함) PHP에서 파일 속성을 가져오는 방법 소개
위 내용은 PHP 변수는 어떻게 정의되며 PHP는 어떻게 작동하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!