2014-01-23 3 views
0

사용자가 배열에 객체를 추가하고 삭제할 수있는 양식이 있습니다. 삭제 프로세스는 배열을 가져 와서 모든 내용을 드롭 다운 목록에 덤핑하여 사용자가 삭제하고자하는 것을 선택할 수있게합니다.어레이가 올바르게 지워지지 않습니까?

<?php 
session_start(1); 

if (isset($_SESSION['array'])){ 
$narray = $_SESSION['array']; 
if ($narray != NULL){ 
echo "DDDD"; 
} 

echo 'Select an object to delete: '; 
echo '<select name=deleteob>'; 
foreach($narray as $drop){ 
     echo'<option value="'.$drop.'">'.$drop.'</option>'; 
    } 
echo '</select>'; 

모든 내용이 삭제 될 때마다 배열이 '지워지지 않습니다'? 나는 그 단어를 모르겠다. 실제로 비우는 것 같지 않다. 메아리 'DDDD'는 배열에 내부에 무언가가 들어 있는지 확인하는 것입니다. 나는 또한 배열이 NULL인지,하지만 둘 다 아무것도 에코 것입니다보고했는데, 드롭 다운 목록은 여전히 ​​빈 선택과 함께 만들어지고 있습니다. 배열은 다른 페이지의 세션 변수에 의해 프로세스 페이지에서 가져옵니다. 기본적으로 배열에는 내부에는 아무 것도 없지만 마치 배열처럼 작동합니다. 이 일을 저지른 건 뭐니? 죄송합니다 나쁜 영어

+0

무엇이'var_dump ($ _ SESSION [ 'array']);'생성합니까? – Class

+0

빈 배열이 'NULL'과 같지 않습니다. – Barmar

+0

배열 크기 0 비어 있음 – user3128099

답변

1

변화를위한에

if ($narray != NULL) { 

: 당신이 배열의 모든 요소를 ​​삭제하면

if (!empty($narray)) { 

, 여전히 배열, 그리고 null 동일하지 않습니다.

관련 문제