문제

메시지와 함께 배열을 만들고 싶습니다.

$myArray = array('my message');

그러나이 코드를 사용하여 myArray 이미 존재하면 덮어 쓰게됩니다.

내가 사용하는 경우 array_push, 이미 존재해야합니다.

$myArray = array(); // <-- has to be declared first.
array_push($myArray, 'my message');

그렇지 않으면, 그것은 bink입니다.

첫 번째 청소없이 위의 두 번째 예를 만드는 방법이 있습니까? $myArray = array();?

도움이 되었습니까?

해결책

배열이 먼저 존재하는지 확인하고 그렇지 않은 경우 작성하십시오. 그런 다음 배열이 확실히 손에 정의 될 것임을 알고 요소를 추가하십시오.

if (!isset($myArray)) {
    $myArray = array();
}

array_push($myArray, 'my message');

다른 팁

여기:

$myArray[] = 'my message';

$ myArray는 배열이거나 설정되지 않아야합니다. arrayAccess를 구현하지 않는 문자열, 정수 또는 객체 인 값을 보유하면 실패합니다.

ISSET이 아닌 is_array ()를 사용해야합니다. 유용한 lyArray가 배열 또는 문자열을 반환하는 함수에서 설정된 경우 (예 : 오류의 -1)

MyArray가 다른 곳에서 배열이 아닌 것으로 선언되면 오류를 방지합니다.

if(is_array($myArray))
{
   array_push($myArray,'my message');
}
else
{
   $myArray = array("my message");
}
if ($myArray) {
  array_push($myArray, 'my message');
}
else {
  $myArray = array('my message');
}

OIS의 방식이 작동합니다.

또는

if (!isset($myArray)) 
    $myArray=array();
array_push($myArray, 'message');
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top