Ошибки языка PHP или что это тогда?

123
ewg777
На сайте с 04.06.2007
Offline
225
#11

$temp=count($date_mass)-1;

for($i=$temp; $i>=0; $i--)
{
Пешком в кетай проще.
Слава Шевцов, про foreach слышал ?
forEach выигрывает только в случае ассоциативных массивов, иначе for значительно быстрее. http://php.spb.ru/php/speed.html - можно проверить и самому.
dvaes
На сайте с 03.09.2007
Offline
65
#12

ewg777, а вы то проверяли?) статья по-моему написана еще во времена php3)

у меня в этих самих тестах со статьи foreach показывает самые быстрые результаты)

[Удален]
#13

А зачем циклы? есть же in_array.

ewg777
На сайте с 04.06.2007
Offline
225
#14
dvaes:
ewg777, а вы то проверяли?) статья по-моему написана еще во времена php3)
у меня в этих самих тестах со статьи foreach показывает самые быстрые результаты)

Проверял.

За 4.53567504883 код:

$start = microtime(true);
$b = 'beaver';
$array = range(1000000, 10000000, 3);
foreach ($array as $key=>$value)
{
$a = 'beavers'.$value;
}
echo microtime(true)-$start;
За 2.74325895309 код:

$start = microtime(true);
$b = 'beaver';
$array = range(1000000, 10000000, 3);
$c = count($array);
for ($i = 0; $i < $c; $i++)
{
$a = 'beavers'.$array[$i];
}
echo microtime(true)-$start;

Итого:

$file = array_map ('trim', file('date.txt'));
$date = date("d.m.Y");
var_dump (in_array ($date, $file));
dvaes
На сайте с 03.09.2007
Offline
65
#15

2.14961099625


$start = microtime(true);
$b = 'beaver';
$array = range(1000000, 10000000, 3);
foreach ($array as $key=>$value)
{
$a = 'beavers'.$value;
}
echo microtime(true)-$start;

2.18008613586


$start = microtime(true);
$b = 'beaver';
$array = range(1000000, 10000000, 3);
$c = count($array);
for ($i = 0; $i < $c; $i++)
{
$a = 'beavers'.$array[$i];
}
echo microtime(true)-$start;

foreach ($array as $value) еще быстрей.

если что, то у меня php 5)

[Удален]
#16

Вот весь код без циклов, его быстродействие проверите?


function clear($d)
{
return(trim($d));
}
$dm=file('date.txt');
$dm = array_map("clear", $dm);
(in_array(date("d.m.Y"),$dm))?print "Yes":print "No";
ewg777
На сайте с 04.06.2007
Offline
225
#17

CashCardWire, Уже давно реализовано (и даже проще чем у Вас) - /ru/forum/comment/5642416

edogs software
На сайте с 15.12.2005
Offline
775
#18

Раз уж тут собрались оптимизаторы такой задачи, то с учетом ее постановки предложим и свой вариант:)


if(strpos(file_get_contents('date.txt'),date("d.m.Y"))===false) echo 'НЕТ'; else echo 'ДА';

уверены что он шустрее любого из вышепредложенных.

Разработка крупных и средних проектов. Можно с криптой. Разумные цены. Хорошее качество. Адекватный подход. Продаем lenovo legion в спб, дешевле магазинов, новые, запечатанные. Есть разные. skype: edogssoft
[Удален]
#19

Проверил сам 0.000496864318848

dvaes
На сайте с 03.09.2007
Offline
65
#20

мне кажется, что цикл с break или подобным прерыванием будет быстрее , чем array_map и in_array

123

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий