| |
|
|
| | Здравствуйте..
Не могли бы вы подробно объяснить эту функцию??Я вообще никак не понимаю..
Не надо давать ссылки на маны и книги...плз мне объясните с примерами... | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 18:57)
| | | Что конкретно не понятно?
Функция позвзоляет производить обход массива неизвестного размера с неизвестными полями.
Например, мы знаем, что у нас есть массив $mass с неизвестным ко-вом полей
<?php
foreach ($mass as $key => $value)
echo "Значение $key равно $value<br>";
?>
|
Но это я очень туманно ответил :)) Задавайте конкртеные вопросы! | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 18:57)
| | | Цикл foreach предназначен для перебора ассоциативных массивов.
http://softtime.ru/forum/read.php?id_forum=1&id_theme=27098 | |
| |
|
|
| |
|
|
| |
для: Саня
(11.04.2007 в 19:20)
| | | Есть массив $array
циклом обходим каждый его елемент:
foreach($array as $element)
{
echo " $element";
}
где as типа служебное слово а $element - это переменная что будет содержать поочереди каждый елемент массива, начиная с указателя вроде!
Тоесть в цикле мы выводим сначала 1й елемент, потом 2 и т.д. до конца массива
ничего сложного!
а если сделать так:
foreach($array as $key->$element)
{
echo "ключ - $key, елемент -$element";
}
|
то можно получить еще и доступ к ключам массива - $key | |
| |
|
|
| |
|
|
| |
для: Саня
(11.04.2007 в 19:20)
| | | На самом деле - для перебора элементов любых массивов в порядке размещения ключей в них. | |
| |
|
|
| |
|
|
| |
для: Trianon
(11.04.2007 в 19:58)
| | | Ну я же не сказал только ассоциативные массивы. | |
| |
|
|
| |
|
|
| |
для: Саня
(11.04.2007 в 20:17)
| | | Вы - нет. Но в указанной Вами теме cheops акцентировал внимание на различии. Хотя всущности его нет... В php любой массив - ассоциативный. Так что сказать 'только' или не сказать... :) | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 18:57)
| | | [поправлено модерирование] | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 18:57)
| | | Блин......я не вот не пойму....
зачем вообще нужна эта функция.....если её перевести, то будет так?
foreach($массив как $переменная)
echo $переменная;
Какая разница что мы будем выводить??
Зачем эта функция??
Разве нельзя задавать...
Ведь можно просто echo $массив
Ну вот
foreach($array as $element)
{
echo " $element";
}
Зачем это делать????Ведь можно просто написать echo $array
foreach($array as $key->$element)
{
echo "ключ - $key, елемент -$element";
}
Что за ключ?Ну блин...не понимаю я | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 23:24)
| | | а ты пробовал, так выводить, попробуй!
должно вывести
в цикле можно допустим проверять какенидь условие
foreach($array as $element)
{
if($element>5)
echo $element;
}
к примеру!
Или ты допустим захочеш еще какиЕ нибудь модификации этого массива сделать, что Угодно, КРУТИ, ВЕРТИ ЕЛЕМЕНТЫ, ПРОВЕРЯЙ, ПИХАЙ ИХ КУДА ХОЧЕШ, ИСПОЛЬЗУЙ | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 23:24)
| | | это для упрощения сделано все
вот сравни это и посуди что проще
<?
$students = array (
/* ученики */
);
/*
надо занести в базу каждого студента и отправить сообщение на почту об успешной сдаче экзамена
*/
/* стандартный for */
for ($i=0; $i<count($students); $i++)
{
mysql_query ("insert into students set name='{$students[$i]['name']}', surname='{$students[$i]['surname']}', ...");
mail ($students[$i]['email'], 'Вы зачислены', 'Поздравляем с успешной сдачей экзаменов!');
}
/* и через foreach */
foreach ($students as $s)
{
mysql_query ("insert into students set name='$s[name]', surname='$s[surname]', ...");
mail ($s['email'], 'Вы зачислены', 'Поздравляем с успешной сдачей экзаменов!');
}
?>
|
| |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 18:57)
| | | Вроде понял, потестил на локалхосте...
Но не пойму, разве где-то нужно выводить все что находиться в массиве? | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 23:44)
| | | ПривеДу тебе простой пример:
У меня есть чекБОКс, мнОГо чекБОксоВ!!!
оТмЕченныЕ ЗаполНяЮт Массив данными!!!
например $book! - это массив
дальше мне нужно загнать его в БД
структура:
так сразу как ты массив загонеш в ЗАПРОС
INSERT INTO table values(NULL,name,$book);
|
так не правильно!!!! ОШибКа
Нужно перебрать массив по елементам, и каждый уже елемент заганять в таблицу:
foreach($book as $value)
{
mysql_query("INSERT INTO talbe values (NULL,name,$value) ");
}
|
Вставляется id, name, и поочередно все елементы массива, до его конца!!!
РАЗОБРАЛСЯ??? | |
| |
|
|
| |
|
|
| |
для: ШИМ
(11.04.2007 в 23:59)
| | | Т.е. если без фореач, то он как бы вставит вот такое:
id[0], name[0],$valu[0]
id[1], name[1],$valu[1]
id[2], name[2],$valu[2]
и т.д.
Т.е. мы сократили код ? | |
| |
|
|
| |
|
|
| |
для: SnooPI
(12.04.2007 в 00:08)
| | | Ну ВПРИНЦИПЕ Да!
ПросТО так как у тебя не сделаеш, если не знаеш ключей, и много приймуществ | |
| |
|
|
| |
|
|
| |
для: SnooPI
(11.04.2007 в 18:57)
| | | Данный тип цикла позволяет обходить ассоциативные массивы... Когда вы работаете с неассоциативным массивом вы заранее знаете, что индексы массива пробегают значения от 0 до N - 1, где N - количество элементов в массиве. Когда вы работаете с ассоциативным массивом, вы заранее не знаете как называется ключ. При помощи foreach вы последовательно можете перебирать элементы массива, получая пары ключ=значение. | |
| |
|
|