2012-10-02 7 views
1

승 나는의 URL로를 $list라는 배열을 돌려 다음을 사용 :array_map/null 값

function genIMG($sValue) { 
return 'http://asite.com/'.$sValue.'?&fmt=jpg'; 
} 
$IMGurls = array_map("genIMG", array_unique($list)); 
foreach($IMGurls as $imgLink) { 
echo "<a href='". $imgLink ."'>". $imgLink ."</a><br />"; 
} 

이 작동하지만, 나는 또한 배열의 일부 null 값이 있습니다. 배열 맵에서 null 값을 무시하도록하려면 어떻게해야합니까? 그렇지 않으면 다음과 같은 내용이 생성됩니다. http://asite.com/?&fmt=jpg null이므로 파일 이름이 없습니다.

답변

5

당신 $list이 포함되어 있어야합니다 빈 값은 array_filter

$IMGurls = array_map("genIMG", array_unique(array_filter($list))); 

$list = array(1,2,3,4,5,"","",7); 

function genIMG($sValue) { 
    return 'http://asite.com/' . $sValue . '?&fmt=jpg'; 
} 

$IMGurls = array_map("genIMG", array_unique(array_filter($list))); 
foreach ($IMGurls as $imgLink) { 
    echo "<a href='" . $imgLink . "'>" . $imgLink . "</a><br />"; 
} 

출력

http://asite.com/1?&fmt=jpg 
http://asite.com/2?&fmt=jpg 
http://asite.com/3?&fmt=jpg 
http://asite.com/4?&fmt=jpg 
http://asite.com/5?&fmt=jpg 
http://asite.com/7?&fmt=jpg 
를 사용