사진과 같이 $t1, $t2 변수를 선언하지 않았습니다 왜 사용할 수 있나요? 오류가 보고되지 않으며 설명서에도 이유가 나와 있지 않습니다
귀하의 질문이 두 가지 의미를 갖는다는 것을 이해합니다.
변수가 선언되지 않았습니다
선언되지 않은 변수를 사용해도 오류가 보고되지 않습니다
첫 번째 점에 대해 말하자면, PHP는 약한 유형의 언어이므로 변수를 사용하기 전에 선언할 필요가 없습니다. 변수에 값을 할당할 때 동시에 변수를 선언(초기화)한다는 것도 이해할 수 있습니다. 음, list의 사용 설명서에는 배열의 값을 변수 세트에 할당, 즉 list($t1, $t2) =explore(를 실행한 후)라고 매우 명확하게 나와 있습니다. ' ', microtime( )), $t1 및 $t2에 대한 할당이 성공했습니다. list($t1, $t2) = explode(' ', microtime())的时候,已经给 $t1 和 $t2 赋值成功。
첫 번째 사진:
설명서에는 배열의 값을 변수 세트에 할당하라고 매우 명확하게 나와 있습니다.
귀하의 질문:
귀하의 질문이 두 가지 의미를 갖는다는 것을 이해합니다.
변수가 선언되지 않았습니다
선언되지 않은 변수를 사용해도 오류가 보고되지 않습니다
첫 번째 점에 대해 말하자면, PHP는 약한 유형의 언어이므로 변수를 사용하기 전에 선언할 필요가 없습니다. 변수에 값을 할당할 때 동시에 변수를 선언(초기화)한다는 것도 이해할 수 있습니다.
음, list의 사용 설명서에는 배열의 값을 변수 세트에 할당, 즉
list($t1, $t2) =explore(를 실행한 후)라고 매우 명확하게 나와 있습니다. ' ', microtime( ))
,$t1
및$t2
에 대한 할당이 성공했습니다.list($t1, $t2) = explode(' ', microtime())
的时候,已经给$t1
和$t2
赋值成功。针对第二点,对于没有声明的变量(也就是没有初始化的变量),使用的话当然报错。
你可以试试直接
echo $undefined;
,$undefined
第一次出现在这里,不出意外情况,肯定报个Notice
级别的错误(请首先正确设置错误级别以及显示错误)。所以你第二条疑问不是使用了未声明的变量不报错,而是你使用了
두 번째 점은 선언되지 않은 변수(즉, 초기화되지 않은 변수)의 경우 당연히 사용하면 오류가 보고됩니다.list()
echo $undefine;
을 직접 시도해 볼 수 있습니다. 여기에 처음으로$undefine
이 나타나면 예상치 못한 일이 발생하지 않으면 반드시알림
을 보고하게 됩니다. code> level error (오류 수준을 올바르게 설정하고 오류를 먼저 표시하십시오).두 번째 질문은 오류를 보고하지 않고 선언되지 않은 변수를 사용했다는 것이 아니라
list()
가 이미 값을 할당한 변수를 사용했다는 것입니다.입양을 희망합니다! 감사해요.
🎜======== 업데이트 ======🎜 🎜위 그림에는 PHP 버전의 list() 사용법 차이도 표시되어 있으니 사용시 주의해주세요! 🎜list 함수의 기능은 배열의 값을 다음과 같은 일부 변수에 할당하는 것입니다.
으아악그러면 $a의 값은 1이고 $b와 $c의 값은 2와 3입니다
으아아아
위는 오른쪽 배열의 키 값을 $t1 $t2 로 차례로 설정한다는 뜻입니다