2017-02-26 5 views
0

woocommerce에서 일부 사용자 지정 특성을 표시하려고합니다. 그 때문에 배열의 키를 울리고 있습니다.foreach 루프에서 중복 값

$mails = get_the_terms($prod_id, 'pa_email'); 

    foreach ($mails as $mail) { 
      $mmail=$mail->name; 
    } 

이것은 지금까지 문제가 없습니다. 그러나 항목에 메일 주소가 설정되어 있지 않으면 이전에 사용한 항목의 마지막 값이 제공됩니다. 그저 마지막 값을 복사하는 대신 비어있는 상태로 유지하기 만하면됩니다.

답변

0

PHP에서 issetempty에 대해 들어 봤어?

$mails = get_the_terms($prod_id, 'pa_email'); 

foreach ($mails as $mail) 
{ 
    if(!isset($mail->name) || empty($mail->name)) 
    { 
    $mmail = ""; 
    } 
    else 
    { 
    $mmail=$mail->name; 
    } 
} 
+0

흠, 지금 말씀 하셨듯이. 하지만 슬프게도 그건 내 문제를 해결하지 못합니다. 몇 가지 이유로 빈 항목이 배열에서 아무 것도 반환하지 않는 것으로 보입니다. 신경 쓰지 마라. 당신의 대답은 절대적으로 정확하며 이것은 woocommerce의 문제로 보인다. – fourgood

+0

@fourgood hmm (여기처럼) 변수에 의문이 생길 때마다 그 안에 무엇이 있는지보기위한'var_dump'를하십시오. 내부에 무엇이 들어 있는지 알게되면 적절하게 처리 할 수 ​​있습니다. 도움이 더 필요하면 자유롭게'var_dump'의 결과를 답에 첨부하십시오. – Hatef