PHP цикл foreach - PullRequest
       4

PHP цикл foreach

3 голосов
/ 20 августа 2010

Ниже приведен пример массива, который я использую для динамического создания запроса SQL на основе параметров, отмеченных в форме.Приведенный ниже код проверяет, есть ли значение, и если да, добавьте его в массив:

if ($lookchild) { $val[]='lookchild'; }
if ($mentalcap) { $val[]='mentalcap'; }
if ($mentalheal) { $val[]='mentalheal'; }
if ($olderpeople) { $val[]='olderpeople'; }
if ($palcare) { $val[]='palcare'; }

Затем я перебираю массив и добавляю остальную часть оператора SQL:

foreach ($val as $r){
    echo $r.'=1 AND ';
}   

Это приводит к:

olderpeople=1 AND palcare=1 AND lookchild=1 AND

Когда цикл достигает последней записи, я не хочу, чтобы он добавлял к нему оператор AND, поскольку после этого оператор SQL должен закрываться.

Как я хочу это завершить:

olderpeople=1 AND palcare=1 AND lookchild=1

Ответы [ 11 ]

0 голосов
/ 20 августа 2010

Попробуйте это:

$isFirst = true;
foreach ($val as $r){
    if(!$isFirst){
        echo ' AND ';
    }else{
        $isFirst = false;
    }
    echo $r.'=1';
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...