Дешифратор коротких URL-адресов   •   Online-инструменты
3 066 просм
1 комм
Поделиться:

Как ограничить количество итераций в цикле foreach на PHP?

foreach – удобный инструмент, который помогает пройтись по всему массиву данных и в последующем с полученными элементами массива произвести необходимые операции.

Но есть один минус в использовании этого цикла – он выводит все результаты, удовлетворяющие вашим условиям выборки.

А что делать, если вам не нужны все, например, 100 значений, а нужны лишь первые 10?

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

Для начала есть смысл рассмотреть простой пример цикла:

$array = array(
	"Shawn Crahan",
	"Craig Jones",
	"Mick Thomson",
	"Corey Taylor",
	"Sid Wilson",
	"Chris Fehn",
	"Jim Root",
	"Jay Weinberg",
	"Alessandro Venturella"
);
 
foreach($array as $value) {

	echo $value."<br>";
	
}

«$value» здесь выведет нам имена всех участников группы SlipKnot. А теперь сделаем ограничение, чтобы вывод был только первых трех:

$array = array(
	"Shawn Crahan",
	"Craig Jones",
	"Mick Thomson",
	"Corey Taylor",
	"Sid Wilson",
	"Chris Fehn",
	"Jim Root",
	"Jay Weinberg",
	"Alessandro Venturella"
);
 
$i = 0; // Задаем переменную

foreach($array as $value) {

	$i++; // С каждым обходом увеличиваем переменную на 1
	
	if($i > 3) {
		
		break; // При достижении i > 3 останавливаем выборку
		
	}
	
	echo $value."<br>";
	
}

А с помощью следующего варианта выведем все значения после третьего:

$array = array(
	"Shawn Crahan",
	"Craig Jones",
	"Mick Thomson",
	"Corey Taylor",
	"Sid Wilson",
	"Chris Fehn",
	"Jim Root",
	"Jay Weinberg",
	"Alessandro Venturella"
);
 
$i = 0; // Задаем переменную

foreach($array as $value) {

	$i++; // С каждым обходом увеличиваем переменную на 1
	
	if($i > 3) { // При достижении i > 3 выводим результат
	
		echo  $value."<br>";
		
	}
	
}

Надеюсь, эта статья поможет вам в решении ваших задач. Если не получается составить необходимое условие – напишите об этом в комментариях к данной статье.

1
комментарий
Игорь
15.01 в 11:07
круто, помогло, спасибо
  • 1
Гостям запрещено учавствовать в обсуждениях сайта. Авторизуйтесь, чтобы иметь возможность оставить свое мнение о материале или задать вопрос.