PHP 오류 로그에서 다음과 같은 프롬프트를 보았습니다.
[27-Aug-2011 22:26:12] PHP 경고: 14행의 /www/hx/enjoy.php에서 스칼라 값을 배열로 사용할 수 없습니다.
[27-Aug-2011 22:26:18] PHP 경고: 14행의 /www/hx/enjoy.php에서 스칼라 값을 배열로 사용할 수 없습니다.
소스 프로그램을 확인하세요. 아마도 다음과 같을 것입니다. this :
코드 복사 코드는 다음과 같습니다.
$arr_hx = $mem->get('hx' );
if(!$arr_hx) {
$arr_hx['a'] = 'b'
$mem->set('hx',$arr_hx)
} 🎜>
기본적으로 $mem->get이 값을 얻지 못하면 false를 반환하는 것으로 이해됩니다. 이때 $arr_hx는 불리언 값인 false를 반환한 후 배열로 사용됩니다. 결과적으로 그러한 프롬프트가 표시됩니다. 실제로 변수가 정의되지 않은 경우이기도 합니다. 할당 앞에 $arr_hx = array() 를 추가하면 문제가 해결됩니다.
확인해 보니 다음과 같은 설명이 있습니다.
인용
유의해야 할 것은 유형 변환입니다.
변수 이름(예: a)이 배열이 아닌 유형으로 정의된 경우 , 예를 들어 정수와 같은 경우 a는 부동 소수점, 문자열(객체 유형 포함)로 변환될 수 있지만 배열이 될 수 없습니다. 즉, a[0]=1은 잘못되었으며 PHP는 "Cannot; 스칼라 값을 배열로 사용합니다. a를 1차원 배열로 정의하더라도 고차원 배열로 변환할 수는 없습니다.
위 내용은 스칼라 내용을 포함하여 스칼라 값을 배열로 사용할 수 없다는 경고에 대한 솔루션을 소개합니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.