Задача:
1. создать ассоциативный массив (это понятно)
2. в новый ассоциативный массив передать первый элемент типа ключ=>значение (это тоже понятно)
3. далее программно необходимо пополнять ассоциативный массив новыми элементами (ключ=>значение); простое присваивание типа $array = array(ключ=>значение) или $array['key'] = value не подходит. функции типа array_push и так далее не подходят, так как нужно пополнять массив новыми элементами ключ=>значение, а не просто заносить значение (value).
почему не работает такая конструкция:
PHP код:
$array = (!isset($array) ? array($key => $value) : $array+= array($key => $value));
в результате ее работы исполняется только первая часть - $array = array($key => $value), а дальнейшее пополнение массива ($array+= array($key => $value))) не происходит.
Не работает и такая конструкция:
PHP код:
<?php
// просто пример
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$num = rand(0,2);
switch ($num) :
case 0 : { $key = 'пример №1'; $value = $ar_1; }
break;
case 1 : { $key = 'пример №2'; $value = $ar_2; }
break;
case 2 : { $key = 'пример №3'; $value = $ar_3; }
break;
endswitch;
$array[] = array($key => $value);
?>
В результате получаем в массиве только один элемент (ключ-значение), а пополнения в дальнейшем нет. только перезаписывание первого элемента новым.
Буду благодарен за любые идеи.
Спасибо.
Спустя 6 минут, 22 секунды (30.04.2011 - 12:02) Nikitian написал(а):
Так надо
if(!isset($array)){
$array = array($key => $value)
}
else{
$array[] = array($key => $value);
}
Спустя 4 минуты, 46 секунд (30.04.2011 - 12:07) skolozhabskiy написал(а):
пробовал - не получается, перезаписывается первый элемент, вот код:
код полностью рабочий, но только с тем что идет перезапись первого элемента и все.
где здесь ошибки?
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$num = rand(0,2);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
endswitch;
if(!isset($array)) {
$array = array($key => $value);
}
else {
$array[] = array($key => $value);
}
var_dump($array);
?>
код полностью рабочий, но только с тем что идет перезапись первого элемента и все.
где здесь ошибки?
Спустя 1 минута, 26 секунд (30.04.2011 - 12:09) Nikitian написал(а):
В этом коде только один элемент и создаётся. Ни цикла, ни повторов нет.
Спустя 1 минута, 47 секунд (30.04.2011 - 12:10) skolozhabskiy написал(а):
вы може подсказать как правильно исправить этот код?
как организовать цикл, когда я не знаю количества записываемых элементов изначально?
или как-то foreach обыгрывается, но как тогда в данной конструкции применить foreach?
спасибо
как организовать цикл, когда я не знаю количества записываемых элементов изначально?
или как-то foreach обыгрывается, но как тогда в данной конструкции применить foreach?
спасибо
Спустя 11 минут, 3 секунды (30.04.2011 - 12:21) Nikitian написал(а):
У вас вообще не понятно от чего должно зависеть количество итераций цикла.
Спустя 1 минута, 7 секунд (30.04.2011 - 12:23) skolozhabskiy написал(а):
по ходу выполнения программы создаюся пары (ключ-значение) мне необходимо их вносить последовательно в некий массив (в конец или начало без разницы). например,
массив = (ключ1-значение1, ключ2-значение2 и так далее), то есть все время пополняя массив новыми элементами, то есть надо массив = (ключ1-значение1, ключ2-значение2.....) и так далее.
спасибо
массив = (ключ1-значение1, ключ2-значение2 и так далее), то есть все время пополняя массив новыми элементами, то есть надо массив = (ключ1-значение1, ключ2-значение2.....) и так далее.
спасибо
Спустя 3 минуты, 17 секунд (30.04.2011 - 12:26) Nikitian написал(а):
Там, где надо добавлять ключ-значение вставляете код:
if(!isset($array)) {
$array = array(0=>array($key => $value));
}
else {
$array[] = array($key => $value);
}
Спустя 3 минуты, 48 секунд (30.04.2011 - 12:30) skolozhabskiy написал(а):
я новичок пока еще в программировании на php
вы можете реально в приведенном мною выше примере с вашим кодом показать как это может работать.
в этом примере я смоделировал ситуацию.
спасибо
вы можете реально в приведенном мною выше примере с вашим кодом показать как это может работать.
в этом примере я смоделировал ситуацию.
спасибо
Спустя 2 минуты, 49 секунд (30.04.2011 - 12:32) Nikitian написал(а):
Как-то так?
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
for($num=0;$num<3;$num++){
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
endswitch;
if(!isset($array)) {
$array = array(0=>array($key => $value));
}
else {
$array[] = array($key => $value);
}
}
var_dump($array);
?>
Спустя 32 секунды (30.04.2011 - 12:33) Лена написал(а):
Код не работает у вас, потому как вы с самого начала пытаетесь к числовому массиву прилепить значения для ассоциативного.
$ar_1 = array('a',' b','c'); - это числовой массив.
Толковее расскажите, что вам нужно сделать на самом деле.
$ar_1 = array('a',' b','c'); - это числовой массив.
$ar_1 = array('asdf'=>'a','asdfs'=>'b','sdfsdf'=>'c');
//добавить новый элемент
$ar_1['qwet'] = 'qwzxc';
//необходимо массив пополнить новыми элементами
//ВСЕ НОВЫЕ ЭЛЕМЕНТЫ НАДО СОБРАТЬ В МАССИВ
$arr_new = array('w'=>'qwe','zxc'=>'xcvxcv');
foreach($arr_new as $key=>$val){
$ar_1[$key]=$val;
}
print_r($ar_1);
Толковее расскажите, что вам нужно сделать на самом деле.
Спустя 1 минута, 51 секунда (30.04.2011 - 12:35) neadekvat написал(а):
skolozhabskiy, покажи исходный массив и тот, который должен получится.
Спустя 5 минут, 12 секунд (30.04.2011 - 12:40) skolozhabskiy написал(а):
исходного массива нет, он получается по ходу выполнения программы в нескольких файлах php. там все отлично и они получаются, а теперь мне необходимо их последовательно сохранить в некий массив. вот такая вот задача.
например,
получаем пару ключ-значение. далее заносим ее во вновь образованный массив, получаем первый элемент массива, потом получает новую пару ключ-значение и ее снова заносим в массив, в итоге получем такую структуру:
массив = (ключ1-значение1, ключ2-значение2)
и так далее, новая пара ключ-значение - в массив
массив = (ключ1-значение1, ключ2-значение2, .. , ключN-значениеN)
извините, но вы снова неверно меня поняли, речь не о присвоении. это просто модель, речь о возможности пополнения некого массива элементами ключ-значение.
то есть:
1. по ходу выполнения программы я получаю новый ключ и получаю новое значение (без разницы какое)
2. создаю некий массив ассоциативный А и добавляю в него первую пару ключ-значение
3. далее по ходу программы я получаю новые пары клю-значение и мне нужно сохранить их в этом массиве А.
подобное присвоение $ar_1['qwet'] = 'qwzxc'; в моем случае невозмодно.
спасибо.
например,
получаем пару ключ-значение. далее заносим ее во вновь образованный массив, получаем первый элемент массива, потом получает новую пару ключ-значение и ее снова заносим в массив, в итоге получем такую структуру:
массив = (ключ1-значение1, ключ2-значение2)
и так далее, новая пара ключ-значение - в массив
массив = (ключ1-значение1, ключ2-значение2, .. , ключN-значениеN)
извините, но вы снова неверно меня поняли, речь не о присвоении. это просто модель, речь о возможности пополнения некого массива элементами ключ-значение.
то есть:
1. по ходу выполнения программы я получаю новый ключ и получаю новое значение (без разницы какое)
2. создаю некий массив ассоциативный А и добавляю в него первую пару ключ-значение
3. далее по ходу программы я получаю новые пары клю-значение и мне нужно сохранить их в этом массиве А.
подобное присвоение $ar_1['qwet'] = 'qwzxc'; в моем случае невозмодно.
спасибо.
Спустя 3 минуты, 28 секунд (30.04.2011 - 12:43) neadekvat написал(а):
skolozhabskiy, дак не нужен настоящий. Покажите структуру исходного и результирующего массивов.
Спустя 1 минута, 54 секунды (30.04.2011 - 12:45) skolozhabskiy написал(а):
показал и объяснил выше. отредактировал предыдущий свой пост
не может быть, чтобы не было решения, мастера php помогите, ведь задача то интересная, даже не на форуме начинающих.
спасибо за любую помощь.
не может быть, чтобы не было решения, мастера php помогите, ведь задача то интересная, даже не на форуме начинающих.
спасибо за любую помощь.
Спустя 1 минута, 46 секунд (30.04.2011 - 12:47) neadekvat написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 13:45) |
показал и объяснил выше. |
Объяснил - вижу, да. А структуры не вижу. И из объяснений непонятно, что нужно.
Спустя 1 минута, 1 секунда (30.04.2011 - 12:48) neadekvat написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 13:40) |
подобное присвоение $ar_1['qwet'] = 'qwzxc'; в моем случае невозмодно. |
Ок, почему невозможно?
Спустя 4 минуты, 54 секунды (30.04.2011 - 12:53) Лена написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 09:40) |
исходного массива нет, он получается по ходу выполнения программы в нескольких файлах php. там все отлично и они получаются, а теперь мне необходимо их последовательно сохранить в некий массив. вот такая вот задача. |
Покажите, что у вас получается по ходу выполнения программы. Если информация секретная, замените чем-нибудь другим.
Спустя 1 минута, 36 секунд (30.04.2011 - 12:55) neadekvat написал(а):
Лена, насколкьо я понял, из
array (key1 => value1, key2 => value2)
ТС надо получить
array (key1 => value1, key2 => value2, key3 => value3)
При этом ни одно стандартное средство, как обычно, не подходит.
array (key1 => value1, key2 => value2)
ТС надо получить
array (key1 => value1, key2 => value2, key3 => value3)
При этом ни одно стандартное средство, как обычно, не подходит.
Спустя 3 минуты, 41 секунда (30.04.2011 - 12:58) Лена написал(а):
Виталик, я тоже так поняла.
В смысле, не подходит?
Ему надо взять значения и долепить к массиву, он должен знать, что ему долепить и к чему лепить - и все.
В смысле, не подходит?
Ему надо взять значения и долепить к массиву, он должен знать, что ему долепить и к чему лепить - и все.
Спустя 1 минута, 55 секунд (30.04.2011 - 13:00) neadekvat написал(а):
Цитата (Лена @ 30.04.2011 - 13:58) |
В смысле, не подходит? |
И мне интересно.
Всегда поражали подобные вопросы: "Надо нарезать хлеб. Нож не предлагать.", "Надо покрасить стены. Краски и кисточки не предлагать" и т.п.
Спустя 2 минуты, 42 секунды (30.04.2011 - 13:03) Лена написал(а):
Меня поражает, что человек сначала выбрасывает куски кода, а после пытается как-то этот кривой код подогнать под свои мысли.
Задача простая, skolozhabskiy надо просто включить голову и объяснить толково: "это у меня есть сейчас, а после я хочу получить вот это", без какого-либо кода.
Задача простая, skolozhabskiy надо просто включить голову и объяснить толково: "это у меня есть сейчас, а после я хочу получить вот это", без какого-либо кода.
Спустя 6 минут, 53 секунды (30.04.2011 - 13:10) walerus написал(а):
По тексту:
Цитата |
то есть: 1. по ходу выполнения программы я получаю новый ключ и получаю новое значение (без разницы какое) 2. создаю некий массив ассоциативный А и добавляю в него первую пару ключ-значение 3. далее по ходу программы я получаю новые пары клю-значение и мне нужно сохранить их в этом массиве А. |
Пункт 1.
Получаем новый ключ и новое значение....
Допустим -
$new_data = array('key' => 'Ключ', 'value' => 'Значение');
Получили.
Пункт 2.
Создаем массив, но создаем его В НАЧАЛЕ всего скрипта/цикла/функции, потому что он будет тогда обнуляться... Итак - ПУНКТ 0. Создаем массив А, он же - RESULT...
$result = array();
Создали.
Теперь вернулись к пункту 2. - добавляю в него первую пару ключ-значение.
$result[] = $new_data;
Добавили.
Пункт 3.
"я получаю новые пары клю-значение и мне нужно сохранить их в этом массиве А".
$new_data_1 = array('key' => 'Ключ_1', 'value' => 'Значение_1');
$result[] = $new_data_1;
$new_data_2 = array('key' => 'Ключ_2', 'value' => 'Значение_2');
$result[] = $new_data_2;
$new_data_N = array('key' => 'Ключ_N', 'value' => 'Значение_N');
$result[] = $new_data_N;
print_r($result);
В результате будет:
Array
(
[0] => Array
(
[key] => Ключ
[value] => Значение
)
[1] => Array
(
[key] => Ключ_1
[value] => Значение_1
)
[2] => Array
(
[key] => Ключ_2
[value] => Значение_2
)
[3] => Array
(
[key] => Ключ_N
[value] => Значение_N
)
)
Что то не так ? - поправьте либо нужно предоставить кусок кода где это все штука будет использоваться...
Спустя 3 минуты, 14 секунд (30.04.2011 - 13:13) walerus написал(а):
Цитата (neadekvat @ 30.04.2011 - 10:00) | ||
И мне интересно. Всегда поражали подобные вопросы: "Надо нарезать хлеб. Нож не предлагать.", "Надо покрасить стены. Краски и кисточки не предлагать" и т.п. |
Надо нарезать хлеб. Нож не предлагать." - Используем - "струну";
Надо покрасить стены. Краски и кисточки не предлагать" - Используем - Мелки.

Спустя 5 минут, 23 секунды (30.04.2011 - 13:18) Лена написал(а):
walerus
$result = array_merge($new_data_1, $new_data_2);
Велосипед уже есть.
$result = array_merge($new_data_1, $new_data_2);
Велосипед уже есть.
Спустя 2 минуты, 8 секунд (30.04.2011 - 13:21) walerus написал(а):
Цитата (Лена @ 30.04.2011 - 10:18) |
walerus $result = array_merge($new_data_1, $new_data_2); |
Хотел и это предложить, но побоялся что человек вообще потеряется ...

Спустя 2 минуты, 18 секунд (30.04.2011 - 13:23) neadekvat написал(а):
Цитата (walerus @ 30.04.2011 - 14:21) |
Хотел и это предложить, но побоялся что человек вообще потеряется ... |
Ага, и предложил красить стены мелками. Браво.
Спустя 2 минуты, 28 секунд (30.04.2011 - 13:25) walerus написал(а):
Цитата (neadekvat @ 30.04.2011 - 10:23) | ||
Ага, и предложил красить стены мелками. Браво. |
Это был сарказм

Спустя 30 минут, 26 секунд (30.04.2011 - 13:56) skolozhabskiy написал(а):
спасибо за многочисленные ответы, но среди них я вижу интересным только walerus с оговоркой, что у меня нет $new_data_1, $new_data_2, $new_data_3 и так далее. а есть $new_data и все!
вот как далее если учесть это обстоятельство?
по поводу краски, хлеба и ножей я в нескольких постах подробнейшим образом объяснил задачу, а привел просто модель.
объединение массивов не проходит - пробовал.
спасибо за любую помощь.
вот как далее если учесть это обстоятельство?
$new_data = array('key' => 'Ключ_1', 'value' => 'Значение_1');
$result = array();
$result[] = $new_data;
новое значение пары:
$new_data = array('key' => 'Ключ_2', 'value' => 'Значение_2');
$result[] = $new_data;
print_r($result);
по поводу краски, хлеба и ножей я в нескольких постах подробнейшим образом объяснил задачу, а привел просто модель.
объединение массивов не проходит - пробовал.
спасибо за любую помощь.
Спустя 2 минуты, 48 секунд (30.04.2011 - 13:59) neadekvat написал(а):
skolozhabskiy, вот я так и не понял, что ты хочешь, если уже высказанное тебе не подходит.
Создай нормальные прототипы того, что есть в начале и что должно быть в конце, распечатай print_r и покажи здесь.
Создай нормальные прототипы того, что есть в начале и что должно быть в конце, распечатай print_r и покажи здесь.
Спустя 28 минут, 52 секунды (30.04.2011 - 14:27) walerus написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 10:56) |
спасибо за многочисленные ответы, но среди них я вижу интересным только walerus с оговоркой, что у меня нет $new_data_1, $new_data_2, $new_data_3 и так далее. а есть $new_data и все! вот как далее если учесть это обстоятельство?
по поводу краски, хлеба и ножей я в нескольких постах подробнейшим образом объяснил задачу, а привел просто модель. объединение массивов не проходит - пробовал. спасибо за любую помощь. |
Покажи кусок цикла в которой генерируется этот $new_data, из того что я писал, потом ты поправил - все работает, будет массив $result со всеми данными, которые туда добавились...
Или опиши все что должно быть выполнено твоим скриптом, просто получается так - все примеры работают, НО, не то что мне надо, а что мне надо... это то что вы уже написали - непонятно просто...
Уже по пунктам все расписано, скажите/покажите, что должно получиться, вариантов слияния, прибавления, добавления массивов уже 2ве страницы исписано.


Спустя 2 минуты, 22 секунды (30.04.2011 - 14:30) Mirexzpalich написал(а):
Может array_merge?
$array = array ("color" => "green", "shape" => "trapezoid");
$array = array_merge ($array, array('hair'=>'blond'));
print_r($result);
Спустя 4 минуты, 20 секунд (30.04.2011 - 14:34) skolozhabskiy написал(а):
еще раз о задаче:
есть переменные ключ и значение, которым по ходу выполнения сценария присваиваются разные значение.
Внимание : одна переменная ключ и одна переменная значение!
далее создаем массив,
как добавить первую пару (ключ1-значение1) мне понятно - проблем нет,
а вот далее нужно каждую новую пару из переменных ключа и значания сохранять в ассоциированном массиве, например, массив = (ключ1-значение1, ключ2-значание2 и так далее)
код пример (так как дело не вскрипте выполнения и присваивания переменным ключ-значение):
далее переменные $new_ключ и $new_значение (они объявлены только один раз в коде!!!) получают новые данные и теперь новую пару нужно добавить в наш массив $result.
выполнение сценария не предусматривает предустановочное количество таких присвоений, поэтому массив должен быть создан один раз и в него просто добавляться новые пары (ключ-значение), вот здесь вот и вся беда нет решения пока как это можно реализовать, при распечатке получаем просто одну пару клю-значение, последние из полученных по ходу выполнения сценария.
print_r($result);
надеюсь что объяснил все правильно и детально.
P.S. в моей задаче переменной $new_data нет, я подробно уже описал еще раз задачу.
с циклом сценария все тоже отлично, дело не в нем.
переменной ключ допустим присваивается какое-нибудь значение , а переменной значение присваивается ее значание, цикл сценария в данном вопросе не играет никакой роли.
спасибо за помощь и любые идеи
есть переменные ключ и значение, которым по ходу выполнения сценария присваиваются разные значение.
Внимание : одна переменная ключ и одна переменная значение!
далее создаем массив,
как добавить первую пару (ключ1-значение1) мне понятно - проблем нет,
а вот далее нужно каждую новую пару из переменных ключа и значания сохранять в ассоциированном массиве, например, массив = (ключ1-значение1, ключ2-значание2 и так далее)
код пример (так как дело не вскрипте выполнения и присваивания переменным ключ-значение):
программно после выполнения сценария переменным ключа и значения присваиваются
$new_ключ = 'Ключ_1;
$new_значение = 'Значение_1';
создаем массив
$result = array();
и заносим в него первую запись
$result[$new_ключ] = $new_значение;
далее переменные $new_ключ и $new_значение (они объявлены только один раз в коде!!!) получают новые данные и теперь новую пару нужно добавить в наш массив $result.
выполнение сценария не предусматривает предустановочное количество таких присвоений, поэтому массив должен быть создан один раз и в него просто добавляться новые пары (ключ-значение), вот здесь вот и вся беда нет решения пока как это можно реализовать, при распечатке получаем просто одну пару клю-значение, последние из полученных по ходу выполнения сценария.
print_r($result);
надеюсь что объяснил все правильно и детально.
P.S. в моей задаче переменной $new_data нет, я подробно уже описал еще раз задачу.
с циклом сценария все тоже отлично, дело не в нем.
переменной ключ допустим присваивается какое-нибудь значение , а переменной значение присваивается ее значание, цикл сценария в данном вопросе не играет никакой роли.
спасибо за помощь и любые идеи
Спустя 41 секунда (30.04.2011 - 14:35) walerus написал(а):
Цитата (Mirexzpalich @ 30.04.2011 - 11:30) |
Может array_merge?
|
Уже было выше ), читаем внимательно ;).
Я вот что тут подумал, а человек который ТС, не обновляет "тупо" страницу выполнения скрипта, т.к. у него всегда почему то 1н и тот же результат - "заносится один элемент" ???
В общем, ждем либо кусок его кода, либо я фз )) сидеть догадываться уже устал ))
Спустя 3 минуты, 18 секунд (30.04.2011 - 14:38) skolozhabskiy написал(а):
ну я же описал задачу. ну какое мерге здесь можно применить? нет предустановочного масисва, он образуется в ходе выполнения скрипта. пожалуйста, читайте внимательно мои объяснения, если их собрать со всех страниц, то вы не найдете там никаких отличий, а приведенный мною пример просто модель, на которой я пытался реально показать свои рассуждения, но решения пока не нашел.
Спустя 49 секунд (30.04.2011 - 14:39) walerus написал(а):
Дык это ... !!! - массив $result - в который ты пихаешь все НОВЫЕ данные, ты его где то создаешь?, если ДА - то где ?
нужно в его ОБНУЛЯТЬ В НАЧАЛЕ скрипта, чтоб он не обнулялся по ходу выполнения скрипта.
и еще, поставь print_r($result);, после КАЖДОГО добавления, и отследишь где у тебя обнуляется массив, и что вообще в него попадает, если очень трудно стучи в аську, аська в профаиле...
нужно в его ОБНУЛЯТЬ В НАЧАЛЕ скрипта, чтоб он не обнулялся по ходу выполнения скрипта.
и еще, поставь print_r($result);, после КАЖДОГО добавления, и отследишь где у тебя обнуляется массив, и что вообще в него попадает, если очень трудно стучи в аську, аська в профаиле...
Спустя 2 минуты, 39 секунд (30.04.2011 - 14:42) skolozhabskiy написал(а):
обнуления нет, смотрите пример ниже
вот кусок кода модели проблемы:
реального кода пока нет. это и есть вопрос.
а данный пример не заносит новых данных в массив, а только их переписывает.
остальная задача очень детально описана в предыдущем посте.
сспасибо
вот кусок кода модели проблемы:
<?php
// просто пример
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$num = rand(0,2);
switch ($num) :
case 0 : { $key = 'пример №1'; $value = $ar_1; }
break;
case 1 : { $key = 'пример №2'; $value = $ar_2; }
break;
case 2 : { $key = 'пример №3'; $value = $ar_3; }
break;
endswitch;
$array = (!isset($array) ? array($key => $value) : $array+= array($key => $value));
?>
реального кода пока нет. это и есть вопрос.
а данный пример не заносит новых данных в массив, а только их переписывает.
остальная задача очень детально описана в предыдущем посте.
сспасибо
Спустя 10 минут, 50 секунд (30.04.2011 - 14:52) walerus написал(а):
Ну Вы вот поражаете, Вы сами тут цикл видите ?, я лично нет, по ходу скрипта - он, соответственно
получит ОДИН раз число, допустим - число=1, дальше, скрипт, по
переключится на
и потом по условию
он выполнит так... Есть ли у нас массив $array - его НЕТУ у нас, ага, значит запишем в него $array = array($key => $value);
все, дальше СТОП скрипт.
Где и КАК он должен добавить еще данные ?, обновляя страницу, Вы запустите все по кругу, если Вам нужно именно так, тогда вам нужно писать в файл ТЕКУЩИЕ значения массива, потом, при обновлении скрипта/страницы, считывать данные из файла, прибавлять туда новые и опять ПЕРЕЗАПИСЫВАТЬ файл...
Вроде все разжевал )
$num = rand(0,2);
получит ОДИН раз число, допустим - число=1, дальше, скрипт, по
switch ($num) :
переключится на
case 1 : { $key = 'пример №2'; $value = $ar_2; }, таким образом он занесет в переменные
$key = 'пример №2';
$value = $ar_2;
и потом по условию
$array = (!isset($array) ? array($key => $value) : $array+= array($key => $value));
он выполнит так... Есть ли у нас массив $array - его НЕТУ у нас, ага, значит запишем в него $array = array($key => $value);
все, дальше СТОП скрипт.
Где и КАК он должен добавить еще данные ?, обновляя страницу, Вы запустите все по кругу, если Вам нужно именно так, тогда вам нужно писать в файл ТЕКУЩИЕ значения массива, потом, при обновлении скрипта/страницы, считывать данные из файла, прибавлять туда новые и опять ПЕРЕЗАПИСЫВАТЬ файл...
Вроде все разжевал )
Спустя 8 минут, 6 секунд (30.04.2011 - 15:01) skolozhabskiy написал(а):
и опять все сначала, пожалуйста,
1. воспринимайте мой пример как модель проблемы.
2. никакого цикла привязанного к данной проблеме нет!!
3. есть две переменные, например, $my_key и $my_value
4. по ходу выполнения скрипта им присваются значения (переменные объявлены один раз, а значения им присваиваются разные!)
5. далее надо просто сохранять эти значения в ассоциативном массиве.
6. я понимаю как работает конструкция если..... то...... я опять повторюсь, что привел просто модель моих рассуждений для того, чтобы меня здесь поправили.
пока я не вижу решения.
может есть еще опытные программисты, которые помогут разобраться.
спасибо
1. воспринимайте мой пример как модель проблемы.
2. никакого цикла привязанного к данной проблеме нет!!
3. есть две переменные, например, $my_key и $my_value
4. по ходу выполнения скрипта им присваются значения (переменные объявлены один раз, а значения им присваиваются разные!)
5. далее надо просто сохранять эти значения в ассоциативном массиве.
6. я понимаю как работает конструкция если..... то...... я опять повторюсь, что привел просто модель моих рассуждений для того, чтобы меня здесь поправили.
пока я не вижу решения.
может есть еще опытные программисты, которые помогут разобраться.
спасибо
Спустя 4 минуты, 27 секунд (30.04.2011 - 15:05) Mirexzpalich написал(а):
Offtop
Спустя 3 минуты, 27 секунд (30.04.2011 - 15:08) walerus написал(а):
Я не пойму, что не так ТУТ пишут ?, мне интересно, вот скажите, по какому принципу должен наполняться результирующий массив?, давайте, прям тут, построчно, ход выполнения скрипта, как я расписал выше, только не нужно писать читайте выше и так далее, либо народ здесь "туповат" в том числе и я, либо идет тупо набор вопрос/ответ - НИ О ЧЕМ... и тему можно закрывать, и ТС тоже, 3ри страницы разговора ни о чем, куча примеров, все расписано уже до немогу...
И так, жду ход работы скрипта Вашими словами...
от
<?php // Запуск пшп скрипта
...
до
// Конец работы скрипта - итог
$result = ...
?>
Спасибо.
И так, жду ход работы скрипта Вашими словами...
от
<?php // Запуск пшп скрипта
...
до
// Конец работы скрипта - итог
$result = ...
?>
Спасибо.
Спустя 2 минуты, 32 секунды (30.04.2011 - 15:11) walerus написал(а):
Цитата |
Mirexzpalich тут твой код |
Поясните, чем Ваш код отличается от его кода, если сравнивать результаты ??
Спустя 6 минут, 3 секунды (30.04.2011 - 15:17) skolozhabskiy написал(а):
я не ситаю никого здесь тупыми. это во-первых
во-вторых вот последовательность задачи, которую я уже много кратно описывал:
1. есть две переменные, например, $my_key и $my_value (переменные объявлены один раз!)
4. по ходу выполнения скрипта им присваются значения (разные!)
5. далее надо сохранять эти значения в ассоциативном массиве, дописывая каждую новую пару в конец массива.
я уж не знаю как еще описать можно задачу?
вы считате это плохим описанием?
спасибо
во-вторых вот последовательность задачи, которую я уже много кратно описывал:
1. есть две переменные, например, $my_key и $my_value (переменные объявлены один раз!)
4. по ходу выполнения скрипта им присваются значения (разные!)
5. далее надо сохранять эти значения в ассоциативном массиве, дописывая каждую новую пару в конец массива.
я уж не знаю как еще описать можно задачу?
вы считате это плохим описанием?
спасибо
Спустя 3 минуты, 26 секунд (30.04.2011 - 15:20) walerus написал(а):
Нет, ни в коем случае плохим, оно непонятно...
вот этот пункт поподробнее....
5. далее надо сохранять эти значения в ассоциативном массиве, дописывая каждую новую пару в конец массива.
откуда будет браться каждая новая пара ???
вот этот пункт поподробнее....
5. далее надо сохранять эти значения в ассоциативном массиве, дописывая каждую новую пару в конец массива.
откуда будет браться каждая новая пара ???
Спустя 6 минут, 2 секунды (30.04.2011 - 15:27) Mirexzpalich написал(а):
walerus
По сути ни чем....
А аФФФтор жжжжет.... Я так понял он хочет добавлять и добавлять ни чего не делая??? или что?
1) АфтАр, ты понимаешь, что ты добавляешь элемент только 1 раз?
2) На данном тобой примере может быть максимум только 3!!! 3!!! элемента!!! Надеюсь ты это тоже понимаешь....
3) 2-е можно обойти, добавляе не просто пары [ключ]=>"значение", а array([ключ]=>"значение")...
По сути ни чем....
А аФФФтор жжжжет.... Я так понял он хочет добавлять и добавлять ни чего не делая??? или что?
1) АфтАр, ты понимаешь, что ты добавляешь элемент только 1 раз?
2) На данном тобой примере может быть максимум только 3!!! 3!!! элемента!!! Надеюсь ты это тоже понимаешь....
3) 2-е можно обойти, добавляе не просто пары [ключ]=>"значение", а array([ключ]=>"значение")...
Спустя 4 минуты, 23 секунды (30.04.2011 - 15:31) skolozhabskiy написал(а):
Mirexzpalich
извините, но вы в очередной раз не понимаете сути вопроса.
по ходу скрипта переменным ключа и значения присваются определенные данные, например,
$my_key = 'ключ1';
$my_value ='значение1';
эти данные заносятся в массив, напрммер, $array = array($my_key => $my_value);
только не нужно замечаний типа не создал массив, создал, допусти где-то там вначале, чтобы он в нужном месте не обнулялся. спасибо
далее переменным $my_key и $my_value по ходу безразоично какого кода присваются новые значения и вот этими значениями (парой - ключ2-значение2, например) нужно дополнить массив $array и в итоге получить:
$array = (ключ1-значение1. ключ2-значение2);
и так далее.................
$array = (ключ1-значение1. ключ2-значение2.....ключN-значениеN);
теперь вы удовлетворены описанием. уж куда еще детальнее.
спасибо
извините, но вы в очередной раз не понимаете сути вопроса.
по ходу скрипта переменным ключа и значения присваются определенные данные, например,
$my_key = 'ключ1';
$my_value ='значение1';
эти данные заносятся в массив, напрммер, $array = array($my_key => $my_value);
только не нужно замечаний типа не создал массив, создал, допусти где-то там вначале, чтобы он в нужном месте не обнулялся. спасибо
далее переменным $my_key и $my_value по ходу безразоично какого кода присваются новые значения и вот этими значениями (парой - ключ2-значение2, например) нужно дополнить массив $array и в итоге получить:
$array = (ключ1-значение1. ключ2-значение2);
и так далее.................
$array = (ключ1-значение1. ключ2-значение2.....ключN-значениеN);
теперь вы удовлетворены описанием. уж куда еще детальнее.
спасибо
Спустя 13 минут, 51 секунда (30.04.2011 - 15:45) Mirexzpalich написал(а):
$count_element_in_array = 5;//Сколько элементов тебе надо? 5?
$alfavit = '1234567890qwertyuiopasdfghjklzxcvbnm';
for($i=1;$i<=$count_element_in_array;$i++)
{
//Создаем пару ключ=> значение
$key = substr(str_shuffle($alfavit),0,5); //ключ
$value = substr(str_shuffle($alfavit),0,5); //значение
//добавляем
$array = (!isset($array)|| !is_array($array)) ? array($key => $value) : array_merge($array,array($key => $value));
}
print_r($array);
Спустя 1 минута, 35 секунд (30.04.2011 - 15:46) walerus написал(а):
Ну так в чем трабл то ?, я вот честно сам не пойму, то ли я как то не так печатаю, то ли что то еще мешает Вам понять...
1. Создали Вы где то там в начале результирующий массив, будет он у нас
$result = array();
2. По ходу скрипта переменным ключа и значения присваются определенные данные, например
$my_key = 'ключ1';
$my_value ='значение1';
эти данные заносятся в массив
$result = array($my_key => $my_value);
3. Далее идет неважно что и сколько раз и где то там, переменным присваивается НОВОЕ значение
$my_key = 'ключ2';
$my_value ='значение2';
нужно дополнить массив $result и в итоге получить:
$result = (ключ1-значение1. ключ2-значение2);
ДЕЛАЕМ:
Резульат
Выше приведенные все скрипты, работали так же, НО, результат был таким
Вы разницу замечаете ?
Если да - то почему не сказали что Вам нужен "ОДНОМЕРНЫЙ" массив,
если нет - тогда это уже другая проблема...
Теперь все как надо ?
1. Создали Вы где то там в начале результирующий массив, будет он у нас
$result = array();
2. По ходу скрипта переменным ключа и значения присваются определенные данные, например
$my_key = 'ключ1';
$my_value ='значение1';
эти данные заносятся в массив
$result = array($my_key => $my_value);
3. Далее идет неважно что и сколько раз и где то там, переменным присваивается НОВОЕ значение
$my_key = 'ключ2';
$my_value ='значение2';
нужно дополнить массив $result и в итоге получить:
$result = (ключ1-значение1. ключ2-значение2);
ДЕЛАЕМ:
$result = array();
$my_key = 'ключ1';
$my_value ='значение1';
$result = array($my_key => $my_value);
/*
тут идет много Вашего кода
и где то тут получаем новые данные
*/
$my_key = 'ключ2';
$my_value ='значение2';
$result = array_merge($result, array($my_key => $my_value));
print_r($result);
Резульат
Array
(
[ключ1] => значение1
[ключ2] => значение2
)
Выше приведенные все скрипты, работали так же, НО, результат был таким
Array
(
[0] => Array
(
[key] => Ключ_1
[value] => Значение_1
)
[1] => Array
(
[key] => Ключ_2
[value] => Значение_2
)
[2] => Array
(
[key] => Ключ_N
[value] => Значение_N
)
)
Вы разницу замечаете ?
Если да - то почему не сказали что Вам нужен "ОДНОМЕРНЫЙ" массив,
если нет - тогда это уже другая проблема...
Теперь все как надо ?
Спустя 10 минут, 41 секунда (30.04.2011 - 15:57) skolozhabskiy написал(а):
извините, но я не получаю такого результата как Вы
вот код с Вашими правками:
в результате его я получаю следующее:
$num = 2
Array ( [mobile] => Array ( [0] => w [1] => m [2] => n ) )
все время при изменении значения переменной происходит перезаписывание первой пары и в массиве всего один элемент (ключ-значение). тетировать можно просто обновляя страницу, при каждом обновлении новое значение переменно $num. да и внимательно обратите свое внимание, что массив образуется только когда он пустой, так что массив при перезагрузке страницы не должен обнуляться.
что не так здесь?
спасибо
вот код с Вашими правками:
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$num = rand(0,2);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
endswitch;
if (!isset($result)) {
$result = array();
$result = array($key => $value);
}
else {
$result = array_merge($result, array($my_key => $my_value));
}
print_r($result);
?>
в результате его я получаю следующее:
$num = 2
Array ( [mobile] => Array ( [0] => w [1] => m [2] => n ) )
все время при изменении значения переменной происходит перезаписывание первой пары и в массиве всего один элемент (ключ-значение). тетировать можно просто обновляя страницу, при каждом обновлении новое значение переменно $num. да и внимательно обратите свое внимание, что массив образуется только когда он пустой, так что массив при перезагрузке страницы не должен обнуляться.
что не так здесь?
спасибо
Спустя 2 минуты, 49 секунд (30.04.2011 - 16:00) Mirexzpalich написал(а):
facepalm.jpg
В ТОПКУ АФФТОРА!!!! Пусть идет книжки читать.... Может уму научится...
В ТОПКУ АФФТОРА!!!! Пусть идет книжки читать.... Может уму научится...
Спустя 2 минуты, 20 секунд (30.04.2011 - 16:02) skolozhabskiy написал(а):
Mirexzpalic
спасибо, я так и сделаю вслед за вами
а пока всеже хочу раобраться с вопросом.
спасибо
спасибо, я так и сделаю вслед за вами
а пока всеже хочу раобраться с вопросом.
спасибо
Спустя 44 секунды (30.04.2011 - 16:03) walerus написал(а):
Кстати - это самые азы работы с массивами, купите книжку по пыхе, будет гораздо легче Вам, хотя бы чтоб правильно написать проблему, а из за "непоняток", разводим демагогию на 5ть листов....
Теперь по делу, Вы ... извините не знаю как Вас по Батюшке, читаете что я для Вас СПЕЦИАЛЬНО пишу ??
Теперь по делу, Вы ... извините не знаю как Вас по Батюшке, читаете что я для Вас СПЕЦИАЛЬНО пишу ??
Цитата |
Где и КАК он должен добавить еще данные ?, обновляя страницу, Вы запустите все по кругу, если Вам нужно именно так, тогда вам нужно писать в файл ТЕКУЩИЕ значения массива, потом, при обновлении скрипта/страницы, считывать данные из файла, прибавлять туда новые и опять ПЕРЕЗАПИСЫВАТЬ файл... |
Помните я писал, на 3й странице... Так вот, при обновлении страницы, скрипт все СБРАСЫВАЕТ/ОЧИЩАЕТ/УДАЛЯЕТ...
Пишу еще раз жирными букавами
Если Вам нужно ЧТОБЫ ПРИ ОБНОВЛЕНИИ СТРАНИЦЫ, МАССИВ ДОПИСЫВАЛСЯ, - тогда вам нужно писать в файл ТЕКУЩИЕ значения массива, потом, при обновлении скрипта/страницы, считывать данные из файла, прибавлять туда новые и опять ПЕРЕЗАПИСЫВАТЬ файл !!!!
Спустя 8 минут, 28 секунд (30.04.2011 - 16:11) skolozhabskiy написал(а):
хорошо, walerus, вы мастер своего дела, я только начал после паскаля. не спорю вы правы, тогда помогите мне как проверить код который я описал на базе вашего? чтобы убедиться, что он работает и в массив последовательно вносятся пары клю-значение. если не сложно. в книжках все написано стандартно, а вот такие навыки можно получить только у профессионалов. если можно маленькое дополнение как реально удостовериться что код работает (как можно рямо на странице без перезагрузки менять значение $num):
спасибо
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$num = rand(0,2);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
endswitch;
if (!isset($result)) {
$result = array();
$result = array($key => $value);
}
else {
$result = array_merge($result, array($my_key => $my_value));
}
print_r($result);
?>
спасибо
Спустя 3 минуты, 7 секунд (30.04.2011 - 16:14) Santehnick написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 12:57) |
извините, но я не получаю такого результата как Вы вот код с Вашими правками:
в результате его я получаю следующее: $num = 2 Array ( [mobile] => Array ( [0] => w [1] => m [2] => n ) ) все время при изменении значения переменной происходит перезаписывание первой пары и в массиве всего один элемент (ключ-значение). тетировать можно просто обновляя страницу, при каждом обновлении новое значение переменно $num. да и внимательно обратите свое внимание, что массив образуется только когда он пустой, так что массив при перезагрузке страницы не должен обнуляться. что не так здесь? спасибо |
ахаха упал :D автор думает, что при обновлении страницы, у него в массив должен дописаться новый элемент. И ему тут уже тысячу раз написали, что при обновлении скрипт идет заного, то есть заново создается этот пустой результирующий массив и в него добавляется (в пустой массив) эта первая пара ключ значение, все скрипт остановился, далее когда он обновляет страницу, интерпретатор начинает снова, с самого начала выполнять твой скрипт, т.е. все чтобы было до этого он забыл блять, начал снова, снова создал пустой массив и опять добавил в него пару ключ значение и остановился. ты понял нет? чтобы сохранить те данные которые у тебя в массиве после обновления страницы их нужно куда-то записать по ходу выполнения скрипта, например в файл или базу данных. Вообще пример какой-то неимоверно тупой, который я даже не знаю для чего использовать то можно.
Спустя 2 минуты, 45 секунд (30.04.2011 - 16:17) skolozhabskiy написал(а):
Santehnick, я полагаю, что если бы вы вместо столь большой тирады о плохом авторе в ветке для начинащих дали ответ на поставленный ранее постом вопрос, было бы меньше места занято на форуме и более поучительно для самого автора. здесь и суть, чтобы научиться или я не прав?
вот при всех предвзятостях я очень благодарен walerus за его терпение и умение логически подвести автора к решению вопроса.
спасибо
вот при всех предвзятостях я очень благодарен walerus за его терпение и умение логически подвести автора к решению вопроса.
спасибо
Спустя 4 минуты, 17 секунд (30.04.2011 - 16:22) walerus написал(а):
Скрипт номер 1
Смотрим на экране вывод, циклом с эмулирована перезагрузка скрипта...
Скрипт номер 2.
Обновляете до посинения, и в результат будет всегда добавляться НОВЫЙ ключ и значение, это с записью в файл.
Под словом НОВЫЙ - я понимаю новый ключ, т.е. не равный тому который в данный момент уже находится в массиве...
РЕЗУЛЬТАТЫ:
1й скрипт - длинный результ, не стал засирать..
2й скрипт
Вот так вот, и паскаль тут не причем, все с чего то начинают, я тоже не проффи, но понять, что при обновлении страницы все сбросится, ну как бы должны все ))
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
for ($i=0; $i <= 10; $i++)
{
$num = rand(0,2);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
endswitch;
if (!isset($result)) {
$result = array();
$result = array($key => $value);
}
else {
$result = array_merge($result, array($key => $value));
}
print_r($result);
}
?>
Смотрим на экране вывод, циклом с эмулирована перезагрузка скрипта...
Скрипт номер 2.
<?php
// Проверяем есть ли наш файл
if (file_exists('result_array.dat'))
$result = unserialize(file_get_contents('result_array.dat'));
else
$result = array();
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$num = rand(0,2);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
endswitch;
if (!isset($result)) {
$result = array();
$result = array($key => $value);
}
else {
$result = array_merge($result, array($key => $value));
}
print_r($result);
file_put_contents('result_array.dat', serialize($result));
?>
Обновляете до посинения, и в результат будет всегда добавляться НОВЫЙ ключ и значение, это с записью в файл.
Под словом НОВЫЙ - я понимаю новый ключ, т.е. не равный тому который в данный момент уже находится в массиве...
РЕЗУЛЬТАТЫ:
1й скрипт - длинный результ, не стал засирать..
2й скрипт
Array
(
[augusto] => Array
(
[0] => a
[1] => b
[2] => c
)
[mobile] => Array
(
[0] => w
[1] => m
[2] => n
)
[sikorsky] => Array
(
[0] => d
[1] => e
[2] => i
)
)
Вот так вот, и паскаль тут не причем, все с чего то начинают, я тоже не проффи, но понять, что при обновлении страницы все сбросится, ну как бы должны все ))
Спустя 1 минута, 12 секунд (30.04.2011 - 16:23) Santehnick написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 13:17) |
я полагаю, что если бы вы вместо столь большой тирады о плохом авторе в ветке для начинащих дали ответ на поставленный ранее постом вопрос, было бы меньше места занято на форуме и более поучительно для самого автора. здесь и суть, чтобы научиться или я не прав? |
а я полагаю, что если бы вы разобрались хотя бы для начала как работает интерпретатор php, то не вынесли бы тут всем мозг, написав "при обновлении страницы" у меня не добавляется новый элемент, а перезаписывается первый"

про работу с файлами прочитай. нужны тебе функции file_get_contents, file_put_contents. Справочник открой и почитай. Мне даже код лень тебе стало писать, когда я как и все догадался о чем речь)
Спустя 3 минуты (30.04.2011 - 16:26) walerus написал(а):
Мне вот теперь чисто интересно, над каким злом работает ТС
??


Спустя 8 минут, 9 секунд (30.04.2011 - 16:34) skolozhabskiy написал(а):
walerus
спасибо, ошибку понял.
скрипт с базой данных.
нужно запоминать разные таблицы по ходу выполнения скрипта и сохранять данные из них.
еще раз спасибо
Santehnick
мой вам совет - никогда не отказывайте в помощи, неизвестно что вас ждет через минуту. жизнь сложная штука. когда-то вероятно вы были не лучше меня, чтобы теперь смеяться над моими ошибками.
спасибо, ошибку понял.
скрипт с базой данных.
нужно запоминать разные таблицы по ходу выполнения скрипта и сохранять данные из них.
еще раз спасибо
Santehnick
мой вам совет - никогда не отказывайте в помощи, неизвестно что вас ждет через минуту. жизнь сложная штука. когда-то вероятно вы были не лучше меня, чтобы теперь смеяться над моими ошибками.
Спустя 2 минуты, 41 секунда (30.04.2011 - 16:37) walerus написал(а):
Да не за что ) Велкам, никто и не отказывал ), просто не совсем понятно было что нужно, вроде все во всех ракурсах расписали, а никак не находим решение.
Надеюсь все у Вас получится.
Надеюсь все у Вас получится.

Спустя 27 минут, 19 секунд (30.04.2011 - 17:04) skolozhabskiy написал(а):
да, попутно вопрос.
если добавить в последний пример еще один ключ, аналогичный уже имеющемуся, то этот ключ всегда будет перезаписан первым элементом (клю-значение), а можно сделать, чтобы последним?
спасибо
если добавить в последний пример еще один ключ, аналогичный уже имеющемуся, то этот ключ всегда будет перезаписан первым элементом (клю-значение), а можно сделать, чтобы последним?
спасибо
Спустя 40 минут, 51 секунда (30.04.2011 - 17:45) walerus написал(а):
Не до конца понял вопрос если честно, приведи пример, что хочешь добавить и что в итоге хочешь получить.
Спустя 4 минуты, 32 секунды (30.04.2011 - 17:49) skolozhabskiy написал(а):
вот так правильно? в массиве выстроилась последовательность элементов (ключ-значение), допустим, что сгенерировался следующий элемент и он имеет тот же ключ, который уже есть в массиве, нужно просто переписать этот ключ в его прежней позиции в массиве, присвоив ему не предыдущие значения, а последние сгенерированные значения. в данном случае я заменил функцию array_merge так как она оставляет при добавлении одноименного ключа прежнее значение, а мне нужно последнее.
спасибо
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$ar_4 = array('z',' x','q');
for ($i=0; $i <= 10; $i++)
{
$num = rand(0,3);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : { $key = 'augusto'; $value = $ar_1; }
break;
case 1 : { $key = 'sikorsky'; $value = $ar_2; }
break;
case 2 : { $key = 'mobile'; $value = $ar_3; }
break;
case 3 : { $key = 'sikorsky'; $value = $ar_4; }
break;
endswitch;
if (!isset($result)) {
$result = array();
$result = array($key => $value);
}
else {
if (array_key_exists($key, $result)) {
$result[$key] = $value;
}
else {
// лучше так
// $result = array_merge($result, array($key => $value));
// или так?
$result += array($key=>$value);
}
}
}
print_r($result);
?>
спасибо
Спустя 13 минут, 19 секунд (30.04.2011 - 18:03) sebastjan написал(а):
Пока писал задание изменилось 
Снимаю своё мнение
Я так понял это как на подобии корзины покупателя, сфомирован новый элемент массива,его прибавляем, выводе выводим весь масив.
или я что то не так понял?
Только не пойму почему не подходит вариант Лена
Думаю логика такая, считали все элементы ассоциативного масссива и выводите через
foreach

Снимаю своё мнение
Я так понял это как на подобии корзины покупателя, сфомирован новый элемент массива,его прибавляем, выводе выводим весь масив.
или я что то не так понял?
Только не пойму почему не подходит вариант Лена
Думаю логика такая, считали все элементы ассоциативного масссива и выводите через
foreach
Спустя 5 минут (30.04.2011 - 18:08) skolozhabskiy написал(а):
спасибо за любое мнение. мне хотелось бы услышать мнение по-поводу последнего кода насколько он оптимален и правилен. спасибо
Спустя 3 минуты, 46 секунд (30.04.2011 - 18:11) walerus написал(а):
Не, Вы делаете тоже самое, вот смотрим условие...
Получается, что если в массиве присутствует ключ(допустим ZZZ), то добавляем в массив $result, ячейку с тем же ключом ZZZ по которому искали, значение ключа ZZZ(допустим XXX)
Если же такого ключа нет, то мы все равно добавляем в массив $result, новую ячейку, через функцию array_merge...
этого не надо делать пусть все остается первоначально, все будет работать, но тут уже как выпадет число rand, т.е. если первым выпало число 1, а потом число 3, то в итоге получится значение 'w',' m','n', если же наоборот, в начале выпадет 3, а потом 1, то последняя запись по этому ключу - будет 'd',' e','i'
Вы сильно замарачиваетесь, пробуйте писать полный код своего скрипта, и уже по результату его работы, будет все ясно, а так Вам будет тяжело, так сказать понять что и как в PHP.
Пишите, если чего то не будет ясно, буду позже.
Удачи.
if (array_key_exists($key, $result))
{
$result[$key] = $value;
}
else
{
$result = array_merge($result, array($key => $value));
}
Получается, что если в массиве присутствует ключ(допустим ZZZ), то добавляем в массив $result, ячейку с тем же ключом ZZZ по которому искали, значение ключа ZZZ(допустим XXX)
Если же такого ключа нет, то мы все равно добавляем в массив $result, новую ячейку, через функцию array_merge...
этого не надо делать пусть все остается первоначально, все будет работать, но тут уже как выпадет число rand, т.е. если первым выпало число 1, а потом число 3, то в итоге получится значение 'w',' m','n', если же наоборот, в начале выпадет 3, а потом 1, то последняя запись по этому ключу - будет 'd',' e','i'
Вы сильно замарачиваетесь, пробуйте писать полный код своего скрипта, и уже по результату его работы, будет все ясно, а так Вам будет тяжело, так сказать понять что и как в PHP.
Пишите, если чего то не будет ясно, буду позже.
Удачи.
Спустя 9 минут, 37 секунд (30.04.2011 - 18:21) skolozhabskiy написал(а):
спасибо
Спустя 1 минута, 12 секунд (30.04.2011 - 18:22) skolozhabskiy написал(а):
извините, я все понял. вы правы не надо ничего кроме приведенного вами кода - мегре заполняет последним значением. спасибо еще раз
Спустя 16 минут, 28 секунд (30.04.2011 - 18:39) Игорь_Vasinsky написал(а):


Спустя 1 час, 20 минут, 36 секунд (30.04.2011 - 19:59) killer8080 написал(а):
Блин, принципиально прочитал все 5 страниц. Не перестаёт меня удивлять наш народ. Как по глумится над новичком, так все горазд, а на ошибку, почему то, так никто и не указал.
Во первых
нельзя так добавлять элементы в массив, правильно так:
Во вторых, это что за бред:
В третьих,
какой смысл в этой проверке? Правильней было бы перед циклом один раз инициировать переменную(массив), а потом просто добавлять туда значения.
Пример:
Во первых
$result += array($key=>$value);
нельзя так добавлять элементы в массив, правильно так:
$result[]= array($key=>$value);
Во вторых, это что за бред:
...
$result = array(); // совершенно бессмысленная строка
$result = array($key => $value);
...
В третьих,
..
if (!isset($result)) {
...
какой смысл в этой проверке? Правильней было бы перед циклом один раз инициировать переменную(массив), а потом просто добавлять туда значения.
Пример:
<?php
$ar_1 = array('a',' b','c');
$ar_2 = array('d',' e','i');
$ar_3 = array('w',' m','n');
$ar_4 = array('z',' x','q');
$result = array();
echo "<pre>";
for ($i=0; $i <= 10; $i++)
{
$num = rand(0,3);
echo 'num = '.$num.'<br />';
switch ($num) :
case 0 : $result['augusto'] = $ar_1;
break;
case 1 : $result['sikorsky'] = $ar_2;
break;
case 2 : $result['mobile'] = $ar_3;
break;
case 3 : $result['sikorsky'] = $ar_4;
break;
endswitch;
}
print_r($result);
echo "<pre>";
?>
Спустя 2 часа, 7 минут, 59 секунд (30.04.2011 - 22:07) Guest написал(а):
опять немного запутался.
есть два массива:
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2)); - динамически создаваемый массив
array_merge($mega_array, $dyn_arr );
необходимо массив $dyn_arr записать в $mega_array. как пользоваться функцией array_merge мне понятно, но массив $dyn_arr может иметь разную длину и отличные от предыдущих элементов (ключ-значение) значения. например как в примере.
вопрос - как соединить два массива, чтобы если значения одинаковых ключей несовпадали, то они (знчения складывались), например в примере не совпадают значения ключа 5, значит в результирующем мне нужно чтобы было значения ключа 5 = 6.
спасибо за любую помощь
есть два массива:
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2)); - динамически создаваемый массив
array_merge($mega_array, $dyn_arr );
необходимо массив $dyn_arr записать в $mega_array. как пользоваться функцией array_merge мне понятно, но массив $dyn_arr может иметь разную длину и отличные от предыдущих элементов (ключ-значение) значения. например как в примере.
вопрос - как соединить два массива, чтобы если значения одинаковых ключей несовпадали, то они (знчения складывались), например в примере не совпадают значения ключа 5, значит в результирующем мне нужно чтобы было значения ключа 5 = 6.
спасибо за любую помощь
Спустя 22 минуты, 50 секунд (30.04.2011 - 22:30) skolozhabskiy написал(а):
что-то с постом предыдущим.
опять немного запутался.
есть два массива:
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2)); - динамически создаваемый массив
array_merge($mega_array, $dyn_arr );
необходимо массив $dyn_arr записать в $mega_array. как пользоваться функцией array_merge мне понятно, но массив $dyn_arr может иметь разную длину и отличные от предыдущих элементов (ключ-значение) значения. например как в примере.
вопрос - как соединить два массива, чтобы если значения одинаковых ключей несовпадали, то они (знчения складывались), например в примере не совпадают значения ключа 5, значит в результирующем мне нужно чтобы было значения ключа 5 = 6.
спасибо за любую помощь
опять немного запутался.
есть два массива:
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2)); - динамически создаваемый массив
array_merge($mega_array, $dyn_arr );
необходимо массив $dyn_arr записать в $mega_array. как пользоваться функцией array_merge мне понятно, но массив $dyn_arr может иметь разную длину и отличные от предыдущих элементов (ключ-значение) значения. например как в примере.
вопрос - как соединить два массива, чтобы если значения одинаковых ключей несовпадали, то они (знчения складывались), например в примере не совпадают значения ключа 5, значит в результирующем мне нужно чтобы было значения ключа 5 = 6.
спасибо за любую помощь
Спустя 3 минуты, 35 секунд (30.04.2011 - 22:34) killer8080 написал(а):
skolozhabskiy
например так:
например так:
<?php
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2));
foreach($dyn_arr as $key => $val){
if(isset($mega_array[$key])){
foreach($dyn_arr[$key] as $k => $v){
if($mega_array[$key][$k] != $v) $mega_array[$key][$k]+= $v;
}
}
else{
$mega_array[$key]= $val;
}
}
echo "<pre>";
print_r($mega_array);
echo "</pre>";
?>
Спустя 32 минуты, 42 секунды (30.04.2011 - 23:06) skolozhabskiy написал(а):
спасибо
а вот моцй, правда нерабочий код:
где я ошибаюсь в своих расссуждениях. этот код вообще может работать?
спасибо
а вот моцй, правда нерабочий код:
<?php
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2));
foreach($dyn_arr as $key => $val){
if(isset($mega_array[$key])){
foreach($dyn_arr[$key] as $k => $v){
if($mega_array[$key][$k] != $v) $mega_array[$key][$k]+= $v;
}
}
else{
$mega_array[$key]= $val;
}
}
echo "<pre>";
print_r($mega_array);
echo "</pre>";
?>
где я ошибаюсь в своих расссуждениях. этот код вообще может работать?
спасибо
Спустя 6 минут, 55 секунд (30.04.2011 - 23:13) killer8080 написал(а):
Цитата (skolozhabskiy @ 30.04.2011 - 22:06) |
а вот моцй, правда нерабочий код: |
А чем он отличается от моего примера?
Спустя 8 минут, 23 секунды (30.04.2011 - 23:22) skolozhabskiy написал(а):
извините я скопировал не тот, но вопрос уже немного посложнее:
а если такие вот массивы:
1. array(2) { [1]=> int(1) [4]=> int(1) } array(1) { ["example1"]=> array(2) { [1]=> int(1) [4]=> int(1) } } array(1) { ["example2"]=> array(2) { [1]=> int(1) [4]=> int(1) } }
2. array(1) { [1]=> int(1) } array(1) { ["example1"]=> array(1) { [1]=> int(1) } }
извините я допусти ошибку массивы выглядят так:
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array(4=>4,5=>1,6=>6,7=>2);
$key = 'example2';
второй массив необходимо добавить в первый с теми же правилами, сравнения и коррекции значения. прриведенный ранее пример работает отлично, а вот с такими массивами не хочет. почему?
вот так работает правильно:
но ошибка на строчке foreach($dyn_arr as $k => $v) - Notice: Undefined offset: 7 in......
спасибо
а если такие вот массивы:
1. array(2) { [1]=> int(1) [4]=> int(1) } array(1) { ["example1"]=> array(2) { [1]=> int(1) [4]=> int(1) } } array(1) { ["example2"]=> array(2) { [1]=> int(1) [4]=> int(1) } }
2. array(1) { [1]=> int(1) } array(1) { ["example1"]=> array(1) { [1]=> int(1) } }
извините я допусти ошибку массивы выглядят так:
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array(4=>4,5=>1,6=>6,7=>2);
$key = 'example2';
второй массив необходимо добавить в первый с теми же правилами, сравнения и коррекции значения. прриведенный ранее пример работает отлично, а вот с такими массивами не хочет. почему?
вот так работает правильно:
if(isset($mega_array[$key])){
foreach($dyn_arr as $k => $v){
if($mega_array[$key][$k] != $v) $mega_array[$key][$k]+= $v;
}
}
else{
$mega_array[$key]= $val;
}
но ошибка на строчке foreach($dyn_arr as $k => $v) - Notice: Undefined offset: 7 in......
спасибо
Спустя 21 минута, 28 секунд (30.04.2011 - 23:43) skolozhabskiy написал(а):
вот так не получется6
а где ошибка?
$i = 0;
if(isset($mega_array[$key])){
foreach($dyn_arr as $k => $v) {
if ($i > count($mega_array[$key])) { exit; }
if ($mega_array[$key][$k] != $v) $mega_array[$key][$k]+= $v;
$i++;
}
}
else{
$mega_array[$key]= $val;
}
а где ошибка?
Спустя 16 минут, 33 секунды (1.05.2011 - 00:00) killer8080 написал(а):
<?php
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array('example2'=>array(4=>4,5=>1,6=>6,7=>2));
foreach($dyn_arr as $key => $val){
if(isset($mega_array[$key])){
foreach($dyn_arr[$key] as $k => $v){
if(isset($mega_array[$key][$k]) && $mega_array[$key][$k] != $v) {
$mega_array[$key][$k]+= $v;
}
else{
$mega_array[$key][$k]= $v;
}
}
}
else{
$mega_array[$key]= $val;
}
}
echo "<pre>";
print_r($mega_array);
echo "</pre>";
?>
Спустя 17 минут, 9 секунд (1.05.2011 - 00:17) skolozhabskiy написал(а):
это пример с корректированными масивами?
я допустил ошибку, неверно задав второв массив.
извините, спасибо
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array(4=>4,5=>1,6=>6,7=>2);
$key = 'example2';
я допустил ошибку, неверно задав второв массив.
извините, спасибо
Спустя 20 минут, 56 секунд (1.05.2011 - 00:38) skolozhabskiy написал(а):
спасибо с этим разобрался, а как будет выглядеть ваш последний пример для второго массива такого вида:
вариант 1.
Вариант 2.
то есть в первом случае (вариант 1) динамический массив был больше по числу элементов, а сейчас он стал меньше (вариант 2) и теперь переданное число элементов $mega_array должно быть равно числу элементов $dyn_arr, а именно 2;
есть универсальное решение вашего кода, предусматривающее число элементов - больше меньше или равно?
я нашел такой вариант кода:
можно ли это представить ввиде одного универсального кода с вашим? есть более лучшее и лаконичное решение?
спасибо
вариант 1.
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array
$dyn_arr = array(4=>4,5=>1,6=>6,7=>2);
$key = 'example2';
Вариант 2.
$mega_array = array('example1'=>array(1=>1,2=>2,3=>3), 'example2'=>array(4=>4,5=>5,6=>6));
$dyn_arr = array(4=>4,6=>3);
$key = 'example2';
то есть в первом случае (вариант 1) динамический массив был больше по числу элементов, а сейчас он стал меньше (вариант 2) и теперь переданное число элементов $mega_array должно быть равно числу элементов $dyn_arr, а именно 2;
<?php
foreach($dyn_arr as $key => $val){
if(isset($mega_array[$key])){
foreach($dyn_arr[$key] as $k => $v){
if(isset($mega_array[$key][$k]) && $mega_array[$key][$k] != $v) {
$mega_array[$key][$k]+= $v;
}
else{
$mega_array[$key][$k]= $v;
}
}
}
else{
$mega_array[$key]= $val;
}
}
echo "<pre>";
print_r($mega_array);
echo "</pre>";
?>
есть универсальное решение вашего кода, предусматривающее число элементов - больше меньше или равно?
я нашел такой вариант кода:
$result = array_diff_key($mega_array[$key],$dyn_arr);
foreach($result as $k => $v) {
if(array_key_exists($k, $mega_array[$key])){
unset($mega_array[$key][$k]);
}
}
можно ли это представить ввиде одного универсального кода с вашим? есть более лучшее и лаконичное решение?
спасибо
Спустя 18 часов, 41 минута, 35 секунд (1.05.2011 - 19:19) killer8080 написал(а):
Цитата (skolozhabskiy @ 1.05.2011 - 00:38) |
и теперь переданное число элементов $mega_array должно быть равно числу элементов $dyn_arr, а именно 2; |
я не понял что ты хочешь получить?
Спустя 5 часов, 2 минуты, 5 секунд (2.05.2011 - 00:21) skolozhabskiy написал(а):
добрый вечер,
удалять записи из первого мега масива, которых уже нет во втором.
спасибо
удалять записи из первого мега масива, которых уже нет во втором.
спасибо
Спустя 10 часов, 49 минут, 52 секунды (2.05.2011 - 11:11) killer8080 написал(а):
Ну тогда нужно просто заменить соответствующий элемент большого массива, на содержимое второго.
<?php
foreach($dyn_arr as $key => $val){
$mega_array[$key]= $val;
}
echo "<pre>";
print_r($mega_array);
echo "</pre>";
?>
Спустя 6 минут, 37 секунд (2.05.2011 - 11:18) CyberOrcX написал(а):
короче, php-шники я не должен краснеть за Вас
ТопикСтартер, знаешь что такое CRON?
В идеале,
один скрипт, который должен работать запускаясь например, каждый час, каждую минуту, каждый день, или в конкретное время....
а CRON - это демон времен Unix..
чтобы какой-то скрипт работал вышеупомянутым образом, в ISPManager'е хостинга нужно найти CRON (эти 4 магических символа, обозначащие демона времен Unix) и добавить задачу в CRON (о, все те же самые 4 магических символа), и еще добавить путь к скрипту и настроить то, когда он будет запускаться
на самом деле, вроде как просто всё

ТопикСтартер, знаешь что такое CRON?

В идеале,
один скрипт, который должен работать запускаясь например, каждый час, каждую минуту, каждый день, или в конкретное время....
а CRON - это демон времен Unix..
чтобы какой-то скрипт работал вышеупомянутым образом, в ISPManager'е хостинга нужно найти CRON (эти 4 магических символа, обозначащие демона времен Unix) и добавить задачу в CRON (о, все те же самые 4 магических символа), и еще добавить путь к скрипту и настроить то, когда он будет запускаться
на самом деле, вроде как просто всё
Спустя 4 минуты, 47 секунд (2.05.2011 - 11:23) killer8080 написал(а):
CyberOrcX
причём здесь крон? Речь идет о том как работать с массивами, а не о какой то практической задаче.
причём здесь крон? Речь идет о том как работать с массивами, а не о какой то практической задаче.
Спустя 42 минуты (2.05.2011 - 12:05) CyberOrcX написал(а):
killer8080
Что Вы подразумеваете под практикой?
Что Вы подразумеваете под практикой?
Спустя 24 секунды (2.05.2011 - 12:05) walerus написал(а):
Вот я все читаю читаю, но УЖЕ не пишу, в голове бардак полный, ТС - дай уже полное задание что тебе нужно написать или что ты там пишешь, что толку то писать как и что нужно делать тебе?, если один кусок кода тебе напишут, ты тут же спрашиваешь уже про другое, в другом помогли, ты что то третье придумываешь, зачем так делать?, не можешь что то написать - УЧИТЬ МАТ ЧАСТЬ хотя бы, а так шаг за шагом писать весь скрипт, ну не дело, либо давай задание, и готовься отблагодарить людей, либо покупай книгу по PHP, и читать читать читать.
Честно уже накипело малость, ну что за пост на 7мь страниц, по работе с массивами? Да и примеры которые ты приводишь, они размытые.
В общем, пиши что нужно сделать полностью, на реальных данных...
Не пытался никого обидеть или еще что то
Честно уже накипело малость, ну что за пост на 7мь страниц, по работе с массивами? Да и примеры которые ты приводишь, они размытые.
В общем, пиши что нужно сделать полностью, на реальных данных...
Не пытался никого обидеть или еще что то

Спустя 10 минут, 42 секунды (2.05.2011 - 12:16) killer8080 написал(а):
Цитата (CyberOrcX @ 2.05.2011 - 12:05) |
Что Вы подразумеваете под практикой? |
под практикой я подразумеваю практику! Если бы автор спросил, например, как обновлять курс валют раз в стуки, то ваш коммент был бы справедлив. Но каким боком планировщик относится к работе с массивами? Я не понял ваш ход мыслей.
Спустя 22 минуты, 47 секунд (2.05.2011 - 12:39) CyberOrcX написал(а):
killer
Цитата |
Но каким боком планировщик относится к работе с массивами? Я не понял ваш ход мыслей. |
Чтобы через какой-то промежуток времени добавлять элемент в какой-то глобальный массив
Спустя 9 минут, 21 секунда (2.05.2011 - 12:48) killer8080 написал(а):
Цитата (CyberOrcX @ 2.05.2011 - 12:39) |
Чтобы через какой-то промежуток времени добавлять элемент в какой-то глобальный массив |
а разве ТС об этом спрашивал? Может я что-то упустил.

Спустя 2 минуты, 53 секунды (2.05.2011 - 12:51) neadekvat написал(а):
Просто поразительно. Шестая страница кончилась, а в теме еще даже не поняли, чего хочет ТС.
Спустя 1 минута, 36 секунд (2.05.2011 - 12:52) CyberOrcX написал(а):
вроде как было такое

Спустя 2 минуты, 50 секунд (2.05.2011 - 12:55) killer8080 написал(а):
Цитата (CyberOrcX @ 2.05.2011 - 12:52) |
вроде как было такое |
где???


Спустя 1 минута, 50 секунд (2.05.2011 - 12:57) CyberOrcX написал(а):
ды было такое... зуб даю ))
Спустя 38 секунд (2.05.2011 - 12:58) CyberOrcX написал(а):
жаловался, что "вот такой вот код не добавляет элементов"
Спустя 5 часов, 29 минут, 30 секунд (2.05.2011 - 18:27) skolozhabskiy написал(а):
добрый вечер. спасибо за помощь. с самого начала был один и тот же вопрос. который крутился вокруг двух массивов, когда я разобрался вариантом когда второй массив больше первого или равен, встал вопрос о продолжении дискуссии о том как будет вести себя если второй массив будет меньше первого, сейчас вопрос уже мне понятен.
кстати, шесть страниц не писаны даром, такого разбора работы с массивами не встретить ни в одном учебнике (я имею ввиду начинающему). в учебниках стандартные примеры, здесь я уверен тема будет полезна и поучительнна для многих, независио от критики от профессионалов.
всех с праздниками и наилучшие пожелания.
спасибо.
кстати, шесть страниц не писаны даром, такого разбора работы с массивами не встретить ни в одном учебнике (я имею ввиду начинающему). в учебниках стандартные примеры, здесь я уверен тема будет полезна и поучительнна для многих, независио от критики от профессионалов.
всех с праздниками и наилучшие пожелания.
спасибо.