2012-03-03 2 views
0

У меня есть три переменные, которые могут содержать или не содержать данные.Как определить, что строка пуста, кроме <br /> тегов?

назовем их $ name, $ address и $ telephone.

Предположим, что я хочу объединить их все в один var, $ contact, каждый на отдельной строке.

$contact = $name.'<br />'.$address.'<br />'.$telephone;

$contact затем получает положить в массив. Этот массив в конце концов проходит через цикл foreach, не обрабатывая никакие вары, которые равны ''. Как определить, является ли строка пустой, кроме двух тегов <br />? Я попытался скопировать $ contact в $ test_contact и запустить str_replace('<br />', '', $test_contact;, но даже если все вары установлены на '', $test_contact == '' по-прежнему оценивает значение false. Я также пробовал trim() после str_replace(), но это тоже не работает. Я также пробовал использовать ===, но опять же, не повезло.

Что мне не хватает? Есть лучший способ сделать это?

Марк

ответ

0

проверка перед установкой:

if ($name.$address.$telephone == '')

тогда пуст

+0

Так просто! Благодаря! – Mark

2

Идя str_replace маршрут определенно должны работать:

if(trim(str_replace('<br />', '', $test_contact)) == '') { 
    echo 'empty'; 
} 

Но почему бы вам не проверить, прежде чем вставить его в массив?

if(strlen($name) + strlen($address) + strlen($telephone) == 0) { 
    // don't insert 
} 
1
if(strlen(str_replace("<br />", "", $test_contact)) === 0) { 
    //empty 
} 
Смежные вопросы