old.ubuntu-desktop.ru - Цикл foreach - PHP Главная > Веб-программирование > PHP
Цикл foreach
Цикл foreach предоставляет простой способ перебора массивов. Foreach работает только с массивами и объектами, и будет генерировать ошибку при попытке использования с переменными других типов или не инициализированными переменными.
Первый вид синтаксиса цикла foreach:
foreach ($array as $value) {
инструкции
}
Цикл foreach будет перебирать заданный массив — $array . На каждой итерации значение текущего элемента присваивается переменной $value.
Цикл foreach выполняет обход и чтение всех элементов массива, пока не будет достигнут последний.
Для того, чтобы напрямую изменять элементы массива внутри цикла, переменной $value должен предшествовать знак &. В этом случае значение будет присвоено по ссылке.
$masiv = array(1, 2, 3, 4, 5);
foreach ($masiv as &$i) {
$i = $i*10; // массив $i сейчас таков: array(10, 20, 30, 40, 50)
echo $i;
unset($i); // разорвать ссылку на последний элемент
}
1020304050
Ссылка на последний элемент массива остается даже после того, как оператор foreach завершил работу. Поэтому рекомендуется удалять ее с помощью функции unset().
Для изменения регистра всех ключей массива используется функция array_change_key_case(). Числовые ключи останутся нетронутыми.
Дополнительные параметры CASE_UPPER, либо CASE_LOWER (используется по умолчанию).
Пример использования:
Верхний регистр
$a = array("g1"=>"кино", "g2"=>"музыка", "g3"=>"театр", "g4"=>"цирк", "red"=>"школа");
print_r($a);
echo "<br>";
$a = array_change_key_case($a, CASE_UPPER);
print_r($a);
Array ( [g1] => кино [g2] => музыка [g3] => театр [g4] =>…
Mozilla Thunderbird — бесплатная кроссплатформенная свободно распространяемая программа для работы с электронной почтой и группами новостей, а при установке расширения Lightning, и с календарем. Является составной частью проекта Mozilla. Поддерживает протоколы: SMTP, POP3, IMAP, NNTP, RSS. Предоставляются официальные сборки для Microsoft Windows, Mac OS X, Linux (i386), причём набор возможностей на всех платформах одинаков.
Описание Mozilla…
Apache OpenOffice — свободный пакет офисных приложений. Конкурирует с коммерческими офисными пакетами (в том числе Microsoft Office) как на уровне форматов, так и на уровне интерфейса пользователя. Одним из первых стал поддерживать новый открытый формат OpenDocument (ISO/IEC 26300).Основан на коде StarOffice, который был приобретён, а затем выпущен с открытым исходным кодом фирмой Sun Microsystems. После покупки последней права на OO.o перешли к…
Blood Frontier это бесплатный 3D шутер для Linux, Windows и MacOS X от первого лица. В игре есть как однопользовательский режим с ботами, так и сетевой, в котором можно постреляться с реальными противниками. Данный шутер особенно придется по душе, всем любителям и поклонникам Quake.
Графика и эффекты у Blood Frontier очень приятные, а звуки и музыка особо не надоедают. Blood Frontier использует игровой движок Cube Engine…
Anki — программа, помогающая вам запоминать разные данные (например, слова или выражения на иностранном языке) легко, быстро и эффективно. Для этого программа отслеживает как хорошо вы запомнили каждый из пунктов и использует эту информацию для составления оптимального графика показа карточек.
Помимо текста, она может воспроизводить звук, показывать изображения и TeX- вставки в карточках. Она может…