|
|
|
| Здравствуйте!
как определить максимальное значение массива:
? | |
|
|
|
|
|
|
|
для: vadimka
(03.06.2011 в 17:54)
| | Можно воспользоваться функцией max()
<?php
...
echo max($week[$i]);
...
?>
|
| |
|
|
|
|
|
|
|
для: cheops
(03.06.2011 в 18:15)
| | у меня как:
я взял скрипт календаря, мне с этого форума
http://softtime.ru/forum/read.php?id_forum=1&id_theme=79438
вместо праздничных дней мне нужно выделить дату ""текущего номера газеты (понедельник, четверг)
вместо
if($j == 5 || $j == 6 || ($date[date('n')][$week[$i][$j]]))
| сделал:
мне выдает номера понедельников и четвергов и вот if($current>$week[$i][$j] )допустим сегодня 7 число соответственно выдает: 2,6 вот 6 - это текуший номер, который в наличии. | |
|
|
|
|
|
|
|
для: vadimka
(03.06.2011 в 19:17)
| | А что теперь нужно получить? Под максимальным значением мы что будем подразумевать? | |
|
|
|
|
|
|
|
для: cheops
(03.06.2011 в 19:55)
| | ну вот сегодня if($week[$i][$j]<= $current )
выдает 2,6 мне нужно 6
если бы было сегодня - 17, то 2 6 9 13 16 самое большое - 16. Вот 16 нужно... | |
|
|
|
|
|
|
|
для: vadimka
(06.06.2011 в 11:06)
| | А вы эти числа (2, 6) складируйте в массив, а потом получайте максимальное при помощи функции max(). | |
|
|
|
|
|
|
|
для: cheops
(06.06.2011 в 11:11)
| | вот тут у меня проблема. далею так:
$arr=array($week[$i][$j]);
$newarr= $arr[0];
echo "<pre>";
print_r($newarr);
echo max($newarr)."<br>";
|
массив есть на max($newarr) выдает ошибку:
Warning: max() [function.max]: When only one parameter is given, it must be an array in | |
|
|
|
|
|
|
|
для: vadimka
(06.06.2011 в 11:33)
| | Вот этой строкой вы превращаете массив в переменную (из-за этого и возникает ошибка)
вероятно имелась в виду следующая строка
| |
|
|
|
|
|
|
|
для: cheops
(06.06.2011 в 11:54)
| |
$arr=array($week[$i][$j]);
echo "<<".($arr[0]).">><br>";
|
Выдает:
то что нужно, но когда ставишь max ($arr[0]) - выдает ошибку... | |
|
|
|
|
|
|
|
для: vadimka
(06.06.2011 в 13:01)
| | Потому что вы передаете скалярное значение, а функция max() требует массив, т.е. вместо max ($arr[0]) нужно писать max ($arr). | |
|
|
|
|
|
|
|
для: cheops
(06.06.2011 в 13:08)
| | ну, да,
echo "<pre>";
print_r($arr);
|
Array
(
[0] => 6
)
Array
(
[0] => 13
)
Array
(
[0] => 2
)
Array
(
[0] => 9
)
Array
(
[0] => 16
)
|
если написать max ($arr) - выдает все эти цифры | |
|
|
|
|
|
|
|
для: vadimka
(06.06.2011 в 13:14)
| | Вероятно это из-за того, что у вас в массиве одна цифра. У вас же есть массив $newarr, в который вы складируете все цифры, применяйте max() к нему. | |
|
|
|
|
|
|
|
для: cheops
(06.06.2011 в 13:38)
| | у меня все это в цикле:) соответственно зарядка массива идет в цикле:
я просто не подумал, что "макс" делать надо вне цикла:) | |
|
|
|