Использование PHP "для".Вместо последовательных номеров используйте конкретные номера - PullRequest
2 голосов
/ 03 ноября 2011

Я довольно новичок в PHP и хочу написать оператор "for" на основе идентификаторов страницы. Проблема в том, что идентификаторы не являются последовательными (я имею в виду, что они не увеличиваются на 1 каждый раз, т.е. 1,2,3,4,5). Есть ли способ использовать «для», чтобы использовать конкретные цифры? Например (псевдокод)

for IDnumbers i = (1,5,7,23,28,34)
 echo "function1(i)"
 echo "function2(i)"
end

Надеюсь, это имеет смысл. Я хочу, чтобы функции, связанные с каждым идентификатором записи, возвращались, но я хочу, чтобы идентификаторы были конкретными. Извините, если это основной вопрос!

edit: вау, это действительно было просто. Спасибо, ребята!

Ответы [ 7 ]

4 голосов
/ 03 ноября 2011
// create an array
$numbers = array(1,5,7,23,28,34);

// loop over it
foreach($numbers as $number){
    echo function1($number);
    echo function2($number);
}
3 голосов
/ 03 ноября 2011
foreach (array(1,5,7,23,28,34) as $n) {
  echo "function1($n)";
  echo "function2($n)";
}
2 голосов
/ 03 ноября 2011

Если вы ДОЛЖНЫ использовать FOR, то вы можете сделать это:

$IDNumbers = (1,5,7,23,28,34);

for($i = 0; $i < count($IDNumbers); $i++):
    echo function1($IDNumbers[$i]);
endfor;

Это потому, что, хотя вы сохранили число в качестве значения в числовом массиве, оно все равно упорядочивает его последовательно со ссылкой на идентификаторы и место их добавления. Значение может быть 7, но его указатель равен 2 (0, 1, 2, 3, 4, 5 в этом случае)

2 голосов
/ 03 ноября 2011

попробуйте что-то вроде этого:

IDnumbers = array(1,5,7,23,28,34)
 foreach IDnumbers as id
 echo "function1(id)"
 echo "function2(id)"
end
2 голосов
/ 03 ноября 2011
$IDNumbers = array(1,5,7,23,28,34);
foreach($nums as $num)
{
   echo function1($num);
   echo function2($num);
}

Подробнее о php foreach здесь.

2 голосов
/ 03 ноября 2011

Сохраните числа в массиве и используйте foreach.

2 голосов
/ 03 ноября 2011
foreach( Array(1,5,7,23,28,34) as $i) {
    // do stuff with $i
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...