loops — php break не работает как положено?

У меня есть цикл, который проходит через XML. Затем я получаю результаты из базы данных и ищу идентификатор.

То, что происходит, — то, что, когда идентификатор найден, и происходит разрыв, он останавливает и цикл while, и родительский цикл for. Я просто хочу остановить цикл. Как мне заставить это работать как задумано?

$xml = simplexml_load_file('file/path/here');

$articles = $xml->article;
$total_articles = count($articles);

// Cycle through the list of articles
for($a=0; $a<$total_articles; $a++)
{
// Check if article already exists
// MySQLi select statement goes here

$exists = false;
while($a = $article_result->fetch_assoc())
{
if($a['article_id'] == $id)
{
$exists = true;
break 1;
}
}
}

0

Решение

вы устанавливаете $a в $article_result->fetch_assoc(),

Вот:

...
while($a = $article_result->fetch_assoc())
...

[] < 1 возвращает false для меня, по крайней мере, для php7.

4

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector