Файл vars.php:
<?php
$a++;
?>
Файл index.php:
<?php
$a = 0;
for ($I=0; $I < 3; $I++)
{
require("vars.php");
echo $a;
}
?>
не могу понять почему в результате выполнения выводит 123.
Спустя 9 минут, 55 секунд (8.01.2011 - 12:37) phpdreamer написал(а):
require подключает код файла vars.php (на свое место в index.php)
Получается код:
В цикле из трех итераций над переменной $a проводят операцию "инкремент", увеличивая ее значение на единицу. В том же цикле выводят новое значение этой переменной (сначала 1, потом 2, потом 3)
Получается код:
<?php
$a = 0;
for ($I=0; $I < 3; $I++)
{
$a++; //инкремент $a = $a + 1
echo $a; //вывод в браузер
}
?>
В цикле из трех итераций над переменной $a проводят операцию "инкремент", увеличивая ее значение на единицу. В том же цикле выводят новое значение этой переменной (сначала 1, потом 2, потом 3)
Спустя 1 минута, 37 секунд (8.01.2011 - 12:39) andreisurger написал(а):
Так в условии for переменная I а не a.?
Спустя 10 минут, 15 секунд (8.01.2011 - 12:49) Ангелочек написал(а):
<?php
$a = 0;
for ($I=0; $I < 3; $I++)
{
$a++;
echo $a; echo '<br>';
}
?>
так наглядней будет
Спустя 3 минуты, 28 секунд (8.01.2011 - 12:53) andreisurger написал(а):
Вы меня не поняли. Насчет цикла и итерации я понял. Но в условии for стоит переменная I а не a? Почему же выводится 1-2-3
Спустя 3 минуты, 10 секунд (8.01.2011 - 12:56) Ангелочек написал(а):
ну и что. цикл проходит и $a тоже увеличивается. чё тут непонятного.
Спустя 2 минуты, 51 секунда (8.01.2011 - 12:59) andreisurger написал(а):
В условии for не сказано что $a<3. Тогда переменная a должна бесконечно увеличиваться?
Спустя 5 минут, 5 секунд (8.01.2011 - 13:04) Ангелочек написал(а):
нуу капец. причём тут условие цикла. цикл проходит 3 раза. за каждый проход $a увеличивается на единицу. Ну как ещё обьяснить.
Спустя 1 минута, 45 секунд (8.01.2011 - 13:05) VolDroN написал(а):
по идеи цикл будет выполняться 3 раза. Значит и $а выведится только 3 раза. Т.к. цикл остановиться когда i=3.
разберите свой код.
открывается файл -> выполняется цикл и в результате выводит 1-> т.к. условие в цикле ещё верно, то цикл выполняется ещё раз, выводится уже 2 -> т.к. условие опять верно, выводится 3 -> цикл останавливается по условию
разберите свой код.
открывается файл -> выполняется цикл и в результате выводит 1-> т.к. условие в цикле ещё верно, то цикл выполняется ещё раз, выводится уже 2 -> т.к. условие опять верно, выводится 3 -> цикл останавливается по условию
Спустя 4 минуты, 9 секунд (8.01.2011 - 13:10) Игорь_Vasinsky написал(а):
переменная $i (необходима чтобы задать правило для цикла) используется для работы цикла for.
а в цикле проходит работа над перемнной $a/
а в цикле проходит работа над перемнной $a/
Спустя 3 минуты, 21 секунда (8.01.2011 - 13:13) andreisurger написал(а):
Все понял. Спасибо. Еще один вопрос. $a++ это пост инкремент. То есть сначала значение переменной выводится, а затем увеличивается на 1. так как начальное значение переменной а = 0 то должно выводиться 0-1-2 в соответствии с условием цикла. Или я не прав?
Спустя 2 минуты, 12 секунд (8.01.2011 - 13:15) andreisurger написал(а):
То есть какая переменная стоит в условии for не имеет значения?
Спустя 4 минуты, 5 секунд (8.01.2011 - 13:19) Ангелочек написал(а):
$a=3
$c = ++$a ($c станет равна 4)
$a=3
$c = $a++ ($c станет равна 3)
Спустя 25 секунд (8.01.2011 - 13:20) Игорь_Vasinsky написал(а):
имя переменной для работы цикла не имеет значение , просто эт как внегласная договорённость или просто использование $i по привычке как в мануале - иногда $j - а вообще не важно.
По поводу 0-1-2-3
$a уже равно 0, а в цикле происходит увеличение на 1 покак по условию $i не станет = 3, отсюда и вывод 1-2-3
По поводу 0-1-2-3
$a уже равно 0, а в цикле происходит увеличение на 1 покак по условию $i не станет = 3, отсюда и вывод 1-2-3
Спустя 52 секунды (8.01.2011 - 13:21) Игорь_Vasinsky написал(а):
Ангелочек ну чё ты его путаешь. щас не об этом.
Спустя 7 минут (8.01.2011 - 13:28) andreisurger написал(а):
$a=3
$c = ++$a ($c станет равна 4)
$a=3
$c = $a++ ($c станет равна 3)
Это понятно. Пре и пост инкремент.
По поводу 0-1-2-3 я так понял что это условие по другому можно записать так и оно будет идентично:
$c = ++$a ($c станет равна 4)
$a=3
$c = $a++ ($c станет равна 3)
Это понятно. Пре и пост инкремент.
По поводу 0-1-2-3 я так понял что это условие по другому можно записать так и оно будет идентично:
<?php
for ($a=0, $a < 3, $a++)
{
echo $a;
}
?>
Спустя 12 секунд (8.01.2011 - 13:28) Ангелочек написал(а):
Игорь_Vasinsky
никого я не путаю. Он про пост инкремент спрашивал вот я и ответил
никого я не путаю. Он про пост инкремент спрашивал вот я и ответил
Спустя 1 минута, 48 секунд (8.01.2011 - 13:30) Ангелочек написал(а):
andreisurger
а ты поэксперементируй - попробуй сам разобраться. Это ж прописные истины.
а ты поэксперементируй - попробуй сам разобраться. Это ж прописные истины.
Спустя 6 минут, 6 секунд (8.01.2011 - 13:36) andreisurger написал(а):
Странно этот код выдает 0-1-2. Ничего не понимаю???
Спустя 2 минуты, 51 секунда (8.01.2011 - 13:38) Игорь_Vasinsky написал(а):
<?php for ($a=0, $a < 3, $a++){ echo $a;} ?>
тут естсно будет вывод 0-1-2-3
т.к. $a в условии цикла = 0
тут естсно будет вывод 0-1-2-3
т.к. $a в условии цикла = 0
Спустя 2 минуты, 9 секунд (8.01.2011 - 13:41) andreisurger написал(а):
<?php
$a=0;
for ($i=0; $i < 3; $i++)
{
$a++;
echo $a;
}
?>
Здесь а тоже равно 0 но выводится 1-2-3
Спустя 4 минуты, 40 секунд (8.01.2011 - 13:45) andreisurger написал(а):
и при чем если сделать пост и пре инкремент ничего не меняется?
Спустя 4 минуты, 59 секунд (8.01.2011 - 13:50) Игорь_Vasinsky написал(а):
слушай я даж уже не знаю как объяснить -
$a = 0 вне выполнения цикла - поэтому при выводе уже начинает увиличиваться от первоночального значения.
$i - в условиях цикла и поэтому при выводе первночальное значение 0
$a = 0 вне выполнения цикла - поэтому при выводе уже начинает увиличиваться от первоночального значения.
$i - в условиях цикла и поэтому при выводе первночальное значение 0
Спустя 2 минуты, 27 секунд (8.01.2011 - 13:53) andreisurger написал(а):
Все понятно. Спасибо. Буду учить дальше. Интересно, но сложно. Тем более с моими гуманитарными мозгами.
Спустя 3 минуты, 51 секунда (8.01.2011 - 13:57) Игорь_Vasinsky написал(а):
обращайся. молодец что с начала начинаешь - а то некоторые в дебри лезут без азов.
Спустя 1 минута, 31 секунда (8.01.2011 - 13:58) andreisurger написал(а):
Спасибо. Буду стараться.
Спустя 2 минуты, 38 секунд (8.01.2011 - 14:01) andreisurger написал(а):
Я уже прочитал пару книг по php. Потом как то забросил из-за того что ничего не понятно было. Сейчас опять взялся за изучение. Решил попробовать через интернет университет. Вроде бы понятнее стало.
Спустя 34 минуты, 58 секунд (8.01.2011 - 14:36) Игорь_Vasinsky написал(а):
просто нужна практика паралельно с теорией. так же начинал
Спустя 17 минут, 53 секунды (8.01.2011 - 14:54) andreisurger написал(а):
так вот практически и птаюсь разобраться. Теперь с массивами сложности. Особенно с многомерными. из одномерных вроде понятно как информацию вытащить, с помощью foreach, а из многомерных?
Спустя 5 минут, 36 секунд (8.01.2011 - 14:59) andreisurger написал(а):
Был бы математический склад ума наверное проще было бы разобраться.
Спустя 5 минут, 47 секунд (8.01.2011 - 15:05) Игорь_Vasinsky написал(а):
не..тут аналитический склад нужен.
я не сталкивался с выводом из многомерных массивов
на я бы зная сколько уровней в массиве - повторил бы комбинацию с foreach
я не сталкивался с выводом из многомерных массивов
на я бы зная сколько уровней в массиве - повторил бы комбинацию с foreach
Спустя 3 минуты, 57 секунд (8.01.2011 - 15:09) Игорь_Vasinsky написал(а):
Спустя 2 минуты, 18 секунд (8.01.2011 - 15:11) andreisurger написал(а):
немного не правильно вопрос задал. Имел ввиду как иерархически подойти. Например массив:
Как из него вытащить значение вложенного массива скажем 3?
<?php
$mas = array ( "1" => "1", "2" =>"2",
array ( "1" => "2", "3" => "3"));
?>
Как из него вытащить значение вложенного массива скажем 3?
Спустя 4 минуты, 26 секунд (8.01.2011 - 15:16) andreisurger написал(а):
Блин не правильно написал.
Как из него вытащить значение вложенного массива скажем kat?
<?php
$mas = array ( "1" => "1", "2" =>"2",
"3" => array ( "1" => "2", "5" => "kat"));
?>
Как из него вытащить значение вложенного массива скажем kat?
Спустя 3 минуты, 30 секунд (8.01.2011 - 15:19) Игорь_Vasinsky написал(а):
$mas[3][5];
Спустя 2 минуты, 23 секунды (8.01.2011 - 15:22) andreisurger написал(а):
Вот так правильно будет?:
<?php
foreach ($mas as $key=>$index) {
echo $mas [3][5];
}
?>
Спустя 3 минуты, 42 секунды (8.01.2011 - 15:25) Игорь_Vasinsky написал(а):
Цитата |
foreach ($mas as $key=>$index) { ... } |
это не нужно
ты же напрямую на вложенный массив указываешь
echo $mas [3][5];
Спустя 56 секунд (8.01.2011 - 15:26) Игорь_Vasinsky написал(а):
если уж по твоему то:
<?php
foreach ($mas as $key=>$index)
{
echo $key[5];
}
?>
Спустя 4 минуты, 55 секунд (8.01.2011 - 15:31) andreisurger написал(а):
То есть с помощью echo мы говорим значение какого ключа вывести?
Спустя 10 минут, 16 секунд (8.01.2011 - 15:41) Игорь_Vasinsky написал(а):
echo, print, print_f - это есть функции вывода
Спустя 4 минуты, 25 секунд (8.01.2011 - 15:46) andreisurger написал(а):
<?php
foreach ($mas as $key=>$index)
{
echo $key[5];
}
?>
Это не работает.
foreach ($mas as $key=>$index)
{
echo $key[5];
}
?>
Это не работает.
Спустя 47 секунд (8.01.2011 - 15:47) andreisurger написал(а):
echo $mas[3][5];
Это работает.
Это работает.
Спустя 1 минута, 49 секунд (8.01.2011 - 15:48) andreisurger написал(а):
<?php
$mas = array ( "1" => "1", "2" =>"2",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[3][5];
}
?>
Это работает, но почему то выводит значение 3 раза???
$mas = array ( "1" => "1", "2" =>"2",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[3][5];
}
?>
Это работает, но почему то выводит значение 3 раза???
Спустя 15 секунд (8.01.2011 - 15:49) Игорь_Vasinsky написал(а):
ссори $key - ключ элемента, сам элемент $index
но это будет стараться выводит элементы всех подмассивов с ключом 5
поэтому для конкретного тока:
но это будет стараться выводит элементы всех подмассивов с ключом 5
<?php
foreach ($mas as $key=>$index) {
echo $index[5];
}
?>
поэтому для конкретного тока:
echo $mas[3][5];
Спустя 6 минут, 1 секунда (8.01.2011 - 15:55) andreisurger написал(а):
<?php
$mas = array ( "1" => "1", "2" =>"2",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[3][5];
}
?>
Почему тогда это работает, но выводит значение 3 раза? Выводит так katkatkat????
$mas = array ( "1" => "1", "2" =>"2",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[3][5];
}
?>
Почему тогда это работает, но выводит значение 3 раза? Выводит так katkatkat????
Спустя 3 минуты, 20 секунд (8.01.2011 - 15:58) Игорь_Vasinsky написал(а):
Цитата |
Почему тогда это работает, но выводит значение 3 раза? Выводит так katkatkat???? |
потому что на первом уровне у массива - 3 ключа(элемента) - а второй уровень тока в одном из ключей, поэтоу цикл foreach - 3 резе и выводит (по количеству ключей в массиве первого уровня.)
Спустя 9 минут, 19 секунд (8.01.2011 - 16:07) andreisurger написал(а):
ничего не понял.
Вот смотрите есть скрипт
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[3][5];
}
?>
Он выводит katkatkatkat.
Вот смотрите есть скрипт
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[3][5];
}
?>
Он выводит katkatkatkat.
Спустя 45 секунд (8.01.2011 - 16:08) andreisurger написал(а):
Чтобы вывести kat надо написать так
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $index[5];
}
?>
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $index[5];
}
?>
Спустя 1 минута, 1 секунда (8.01.2011 - 16:09) andreisurger написал(а):
Правильно? Но в массиве есть еще один элемент с ключом 5. Почему скрипт его не выводит. И как вывести их оба???
Спустя 5 минут, 5 секунд (8.01.2011 - 16:14) andreisurger написал(а):
Попробовал сделать вот так
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[5];
echo "<br/>";
echo $mas[3][5];
}
?>
Он мне вывел
10
kat10
kat10
kat10
kat
А как сделать так, чтобы он вывел
10
kat
???
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
foreach ($mas as $key=>$index)
{
echo $mas[5];
echo "<br/>";
echo $mas[3][5];
}
?>
Он мне вывел
10
kat10
kat10
kat10
kat
А как сделать так, чтобы он вывел
10
kat
???
Спустя 3 минуты, 31 секунда (8.01.2011 - 16:18) Игорь_Vasinsky написал(а):
Цитата |
Правильно? Но в массиве есть еще один элемент с ключом 5. Почему скрипт его не выводит. И как вывести их оба??? |
Нет - не верно.
цикл - foreach - используется для перебора всего массива.
т.е. его используют для того чтобы вывести все элементы массива
если ты хочешь только какоето ввести значение - то используешь ссылку на массив.
есть массив:
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "5" => "kat"));
чтоб вытащить элемент с ключом 5 - первого уровня массива (а он у нас двумерный - т.к. хотябы один из элементов массива первого уровня - содержит вложенный массив)
надо указать:
echo $mas[5];
если ты хочешь использовать элемент вложенного массива - то зная какой ключ массива содержит вложенный массив - указываешь:
echo $mas[3][5];
Спустя 1 минута, 12 секунд (8.01.2011 - 16:19) Игорь_Vasinsky написал(а):
Цитата |
А как сделать так, чтобы он вывел 10 kat ??? |
тут значения разных массивов - используй ссылки как я написал ранее
Спустя 57 секунд (8.01.2011 - 16:20) andreisurger написал(а):
Понятно. А если я не знаю ключа массива, то как быть?
Спустя 1 минута, 37 секунд (8.01.2011 - 16:21) andreisurger написал(а):
То есть если мы знаем ключи цикл foreach вообще не нужен. И чтобы вывести значение того или иного ключа нужно напрямую вывести переменную, которой присвоен массив?
Спустя 2 минуты, 58 секунд (8.01.2011 - 16:24) Игорь_Vasinsky написал(а):
именно.
Цитата |
иного ключа нужно напрямую вывести переменную |
- называется ссылка
Цитата |
А если я не знаю ключа массива, то как быть? |
- не понял вопроса, если ты не знаешь ключа - то значение каого ключа ты хочешь получить? парадокс выходит
Спустя 3 минуты (8.01.2011 - 16:27) Игорь_Vasinsky написал(а):
или ты имеешь ввыду что знаешь что один из ключей одного массива имеет вложенный массив - и именно этот массив (вложенный) ты хочешь вывести или один из элементов этого вложенного массива - но тогда ты должен знать ключ этого вложенного массива, или ты знаешь значение элемента этого массива -и хочешь его вывести - то зачем рыскать по массиву, когда можно просто написать элемент...
запутал ты меня.
запутал ты меня.
Спустя 5 минут, 44 секунды (8.01.2011 - 16:33) andreisurger написал(а):
Скажем так не знаю ключа но знаю его значение. Возьмем тот же самый пример:
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "kat"));
?>
По правилам в данном массиве ключ kat будет 2. То есть я могу вывести значение следующим образом
echo $mas[3][2];
А если в таком массиве
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
???
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "kat"));
?>
По правилам в данном массиве ключ kat будет 2. То есть я могу вывести значение следующим образом
echo $mas[3][2];
А если в таком массиве
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
???
Спустя 1 минута, 17 секунд (8.01.2011 - 16:34) andreisurger написал(а):
Блин, что то я сам запутался
Спустя 2 минуты, 44 секунды (8.01.2011 - 16:37) andreisurger написал(а):
Цитата |
или ты имеешь ввыду что знаешь что один из ключей одного массива имеет вложенный массив - и именно этот массив (вложенный) ты хочешь вывести или один из элементов этого вложенного массива - но тогда ты должен знать ключ этого вложенного массива |
Я не знаю ключа вложенного массива и ключа элемента вложенного массива.
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10", array ( "1" => "2", "tor" => "35", "kat"));
?>
Спустя 57 секунд (8.01.2011 - 16:38) andreisurger написал(а):
Такая ситуация может возникнуть?
Спустя 14 минут, 53 секунды (8.01.2011 - 16:53) Игорь_Vasinsky написал(а):
ты путаешь:
формируя массив:
в этом примере: ключи это: 1 и 5, элементы qw и as
[quote]А если в таком массиве[/quote
ща.. надо повторить, почитать..
формируя массив:
$mas = array(
"1" => "qw",
"5" => "as"
);
в этом примере: ключи это: 1 и 5, элементы qw и as
[quote]А если в таком массиве[/quote
]<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
?>
ща.. надо повторить, почитать..
Спустя 2 минуты, 59 секунд (8.01.2011 - 16:56) hellmin написал(а):
Ну если я уловил мысли собравшихся, то тут надо проходить foreach($array as $key=>$value) и в цикле применить ветвление... что-то вроде этого if(is_array ($value)). Другими буквами
foreach($array as $key=>$value)
{
if(is_array ($value))
{
echo $key; // Это ключ
print_r($value); // А это массив
}
}
Спустя 2 минуты, 54 секунды (8.01.2011 - 16:59) Игорь_Vasinsky написал(а):
Спустя 23 секунды (8.01.2011 - 16:59) andreisurger написал(а):
hellmin
Подробнее, а то я запутался вообще.
Подробнее, а то я запутался вообще.
Спустя 4 минуты, 48 секунд (8.01.2011 - 17:04) andreisurger написал(а):
Объясни пожалуйста по русски смысл кода
foreach($array as $key=>$value)
{
if(is_array ($value))
{
echo $key; // Это ключ
print_r($value); // А это массив
}
}
Я так понял что мы перебираем массмв $array где ключ равен значению.
и если не пойму что такое is_array???
foreach($array as $key=>$value)
{
if(is_array ($value))
{
echo $key; // Это ключ
print_r($value); // А это массив
}
}
Я так понял что мы перебираем массмв $array где ключ равен значению.
и если не пойму что такое is_array???
Спустя 2 минуты, 44 секунды (8.01.2011 - 17:07) Игорь_Vasinsky написал(а):
он не правильно понял....
is_array — Функция определяет, является ли переданный аргумент массивом.
он тебе показал как определить какой из элементов первого массива является массивом.
а задача другая - вывести элемент второго массива - не имеющего ключа.
is_array — Функция определяет, является ли переданный аргумент массивом.
он тебе показал как определить какой из элементов первого массива является массивом.
а задача другая - вывести элемент второго массива - не имеющего ключа.
Спустя 1 минута, 42 секунды (8.01.2011 - 17:08) andreisurger написал(а):
Про функции пока рано. Я до них еще не добрался. Мне бы с массивами разобраться.
Спустя 1 минута, 33 секунды (8.01.2011 - 17:10) hellmin написал(а):
Ну если я хоть что-то верное написал... то к примеру чтобы вывести значение вложенного массива с ключом [3] надо сделать, что-то вроде этого.
<?php
$mas = array ( "1" => "1", "2" =>"2",
array ( "1" => "2", "3" => "3"));
foreach($mas as $key=>$value) // проходим весь массив по-элементно
{
if(is_array ($value)) // если текущий элемент является массивом
{
echo $value[3]; // Тут выводим то что искали
}
}
?>
Спустя 3 минуты, 40 секунд (8.01.2011 - 17:14) andreisurger написал(а):
Прочитал вашу ссылку, но только 1 часть, потому что дальше идут функции при работе с массивами. А до них еще рановато. Сначала надо в постом разобраться. Так вот там написано, что вывести элемент многомерного массива можно также как и одномерного. а именно по ключу.
Спустя 1 минута (8.01.2011 - 17:15) Игорь_Vasinsky написал(а):
hellmin
да нет. у элемента нет ключа - вот тогда как?
да нет. у элемента нет ключа - вот тогда как?
Спустя 1 минута, 16 секунд (8.01.2011 - 17:16) andreisurger написал(а):
Но в данном массиве мы не знаем ключа.
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
?>
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
?>
Спустя 1 минута (8.01.2011 - 17:17) hellmin написал(а):
Ну и какой нужно вывести?
Спустя 41 секунда (8.01.2011 - 17:18) Игорь_Vasinsky написал(а):
Но в данном массиве мы не знаем нет ключа.
Спустя 27 секунд (8.01.2011 - 17:18) andreisurger написал(а):
Или в этом не знаем двух ключей:
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10", array ( "1" => "2", "tor" => "35", "kat"));
?>
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10", array ( "1" => "2", "tor" => "35", "kat"));
?>
Спустя 1 минута, 2 секунды (8.01.2011 - 17:19) andreisurger написал(а):
Цитата |
Ну и какой нужно вывести? |
kat
Спустя 36 секунд (8.01.2011 - 17:20) andreisurger написал(а):
Сам запутался и других запутал.
Спустя 2 минуты, 27 секунд (8.01.2011 - 17:22) andreisurger написал(а):
Пойду немного воздухом подышу, и голову проветрю. Потом продолжим.
Спустя 43 минуты, 27 секунд (8.01.2011 - 18:06) andreisurger написал(а):
Прогулялся, подумал и ничего не придумал.
Спустя 5 минут, 38 секунд (8.01.2011 - 18:11) andreisurger написал(а):
Кажется понял. Данный массив
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
?>
по другому можно записать так
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "2" => "kat"));
?>
А данный
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10", array ( "1" => "2", "tor" => "35", "kat"));
?>
так
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"6" => array ( "1" => "2", "tor" => "35", "2" => "kat"));
?>
То есть я изобразил здесь ключи которые должны быть. Наверное?
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "kat"));
?>
по другому можно записать так
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"3" => array ( "1" => "2", "tor" => "35", "2" => "kat"));
?>
А данный
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10", array ( "1" => "2", "tor" => "35", "kat"));
?>
так
<?php
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"6" => array ( "1" => "2", "tor" => "35", "2" => "kat"));
?>
То есть я изобразил здесь ключи которые должны быть. Наверное?
Спустя 1 час, 15 минут, 42 секунды (8.01.2011 - 19:27) hellmin написал(а):
$mas = array ( "1" => "1", "2" =>"2", "5" => "10",
"6" => array ( "1" => "2", "tor" => "35", "2" => "kat"));
Тут "2" => "kat" , даже если не указать ключ, он все равно будет равен 2. Это легко посмотреть функцией var_dump()
var_dump ($mas);
Спустя 2 часа, 10 минут, 17 секунд (8.01.2011 - 21:37) andreisurger написал(а):
Понятно. Спасибо вам. Вроде бы в массивах более менее разобрался. Теперь буду функции штудировать.
Спустя 2 минуты, 41 секунда (8.01.2011 - 21:40) andreisurger написал(а):
Там вообще темный лес для меня.
Спустя 30 минут, 52 секунды (8.01.2011 - 22:11) alex12060 написал(а):
Чтобы понять, выполни этот скрипт:
Просто ты вызываешь цикл, он каждый раз подключает варс и прибавляет к переменной а по 1, поэтому и выводится)
$i and $a - разные вещи.
<?php
$a = $a++;
$a = $a++;
$a = $a++;
echo $a;
?>
Просто ты вызываешь цикл, он каждый раз подключает варс и прибавляет к переменной а по 1, поэтому и выводится)
$i and $a - разные вещи.
Спустя 50 минут, 26 секунд (8.01.2011 - 23:01) andreisurger написал(а):
Цитата |
Чтобы понять, выполни этот скрипт: <?php $a = $a++; $a = $a++; $a = $a++; echo $a; ?> Просто ты вызываешь цикл, он каждый раз подключает варс и прибавляет к переменной а по 1, поэтому и выводится) $i and $a - разные вещи. |
Данный скрипт ничего не выведет. Потому что не указано начальное значение переменной а.
Спустя 1 минута, 14 секунд (8.01.2011 - 23:02) Dron19 написал(а):
Цитата (andreisurger @ 8.01.2011 - 09:39) |
Так в условии for переменная I а не a.? |
ну и что? ты переменную a то тоже увеличиваешь на единицу каждый раз до тех пор пока Ш не станет равной 3, вот он тебе и выводит ее каждый раз увеличенную на единицу, понятно?
Спустя 1 минута, 45 секунд (8.01.2011 - 23:04) Dron19 написал(а):
в общем вывел он тебе 123 потому что он код выполняется до тех пор пока в условии стоит true
Спустя 2 минуты, 49 секунд (8.01.2011 - 23:07) andreisurger написал(а):
Цитата |
ну и что? ты переменную a то тоже увеличиваешь на единицу каждый раз до тех пор пока Ш не станет равной 3, вот он тебе и выводит ее каждый раз увеличенную на единицу, понятно? |
Это я уже понял. Раньше уже объяснил VolDroN и Игорь_Vasinsky и Ангелочек
Спустя 1 минута, 22 секунды (8.01.2011 - 23:08) andreisurger написал(а):
Спасибо за объяснения. Просто в книгах непонятно написано. Поэтому и спрашиваю.
Спустя 12 часов, 10 минут, 21 секунда (9.01.2011 - 11:19) andreisurger написал(а):
Всем доброе утро. Сегодня начал изучать функции и уже появились вопросы. Помогите разобраться, пожалуйста. Вроде с определением и вызовом функций разобрался. Но не пойму про аргументы. Особенно про их замену.
Вот пример:
Это все понятно. То есть мы меняем значение переменной $name. Не могу понять на счет передачи по ссылке. Объясните пожалуйста.
Вот пример:
<?php
function add_lan ($name = "Vasya"){
echo $name;
} // здесь задаем функцию с аргументом $name, которому присвоено значение Vasya
add_lan (); // здесь вызываем функцию.
// то есть в браузере отобразится Vasya
add_lan ("Kolya"); // здесь в браузере отобразится Kolya.
?>
Это все понятно. То есть мы меняем значение переменной $name. Не могу понять на счет передачи по ссылке. Объясните пожалуйста.
Спустя 4 часа, 37 минут, 23 секунды (9.01.2011 - 15:56) andreisurger написал(а):
Неужели никто не объяснит мне передачу аргумента по ссылке?
Спустя 15 минут, 6 секунд (9.01.2011 - 16:11) andreisurger написал(а):
В учебнике описывают такие функции как strstr () или strchr (). Стоит ли их учить? Просто их много очень. Или лучше при необходимости воспользоваться справочником?
Спустя 11 часов, 57 минут, 1 секунда (10.01.2011 - 04:08) MNO121280 написал(а):
Передача значения по ссылке это просто!
Вот смотри есть такой код:
То есть мы просто скопировали в переменную $b значения $a. Но они между собой никак не связаны. Это называется передать по значению.
А теперь другой код:
Теперь они связаны между собой. И если ты меняешь $a то измениться и $b, и наоборот. Это назвается передать значение по ссылке.
Вот смотри есть такой код:
<?php
$a = 1;
$b = $a;
// теперь меняем значение $a
$a = 2;
echo 'значение $a равно: '. $a .'<br />';
echo 'значение $b равно: '. $b .'<br />';
?>
То есть мы просто скопировали в переменную $b значения $a. Но они между собой никак не связаны. Это называется передать по значению.
А теперь другой код:
<?php
$a = 1;
$a = &$b;
// теперь меняем значение $a
$a = 2;
echo 'значение $a равно: '. $a .'<br />';
echo 'значение $b равно: '. $b .'<br />';
$b = 1;
echo '<br /><br />';
echo 'значение $a равно: '. $a .'<br />';
echo 'значение $b равно: '. $b .'<br />';
?>
Теперь они связаны между собой. И если ты меняешь $a то измениться и $b, и наоборот. Это назвается передать значение по ссылке.
Спустя 2 часа, 19 минут, 13 секунд (10.01.2011 - 06:27) twin написал(а):
В учебнике русского языка есть правило, жи ши пишутся с буквой и.
Стоит ли их учить, ведь word и так все показывает?
А еще нафига 2 * 2... есть же калькулятор. Да и попу зачем вытерать, памперсы рулят...
Стоит ли их учить, ведь word и так все показывает?
А еще нафига 2 * 2... есть же калькулятор. Да и попу зачем вытерать, памперсы рулят...
Спустя 3 часа, 43 минуты, 21 секунда (10.01.2011 - 10:11) inpost написал(а):
twin
Ты немного путаешь места. В твоём случае - обязательно, но не в его.
andreisurger
У меня был препод в универе, очень мудрый мужик, всем своим всегда делился, поэтому его направление я знаю очень хорошо. Так вот, он всегда повторял: никогда не надо заучивать информацию, всё равно всё не запомнишь. В голове должны отложиться лишь базовые знания (что делаем и что можно сделать), а все остальное - "надо знать где найти!".
На твоём примере скажу, что ты должен знать, что в ПХП существуют эти функции, и что они делают приблизительно, так же должен ориентироваться, что "str" - говорит, что операция идёт со строками. А вот когда на практике будешь встречаться с поставленной задачей - открываешь справочник и перечитываешь уже известный тебе код, читаёшь нюансы и комментарии пользователей (особенно полезно на php.net).
Я вот так и не смог выучить на память: mysql_fetch_assoc, но сделав десяток сайтов (каждый раз вручную пишу, не копи-пастю) само как-то запомнилось. Сейчас для меня проблема написать: mysql_real_escape_string... вроде так =)
Ты немного путаешь места. В твоём случае - обязательно, но не в его.
andreisurger
У меня был препод в универе, очень мудрый мужик, всем своим всегда делился, поэтому его направление я знаю очень хорошо. Так вот, он всегда повторял: никогда не надо заучивать информацию, всё равно всё не запомнишь. В голове должны отложиться лишь базовые знания (что делаем и что можно сделать), а все остальное - "надо знать где найти!".
На твоём примере скажу, что ты должен знать, что в ПХП существуют эти функции, и что они делают приблизительно, так же должен ориентироваться, что "str" - говорит, что операция идёт со строками. А вот когда на практике будешь встречаться с поставленной задачей - открываешь справочник и перечитываешь уже известный тебе код, читаёшь нюансы и комментарии пользователей (особенно полезно на php.net).
Я вот так и не смог выучить на память: mysql_fetch_assoc, но сделав десяток сайтов (каждый раз вручную пишу, не копи-пастю) само как-то запомнилось. Сейчас для меня проблема написать: mysql_real_escape_string... вроде так =)
Спустя 1 час, 22 минуты, 35 секунд (10.01.2011 - 11:33) andreisurger написал(а):
Насчет передачи значения по ссылке все равно сложновато. Но попробую поэксперементировать и думаю разберусь.
А насчет заучивания думаю inpos прав. Со временем многое запомнится, с опытом.
А насчет заучивания думаю inpos прав. Со временем многое запомнится, с опытом.