В посте Считаем доход в сапе я описывал способ подсчета дохода в сапе за произвольный промежуток времени. Вещь хотя и не тривиальная, но подчас необходимая. Особенно для подведения итогов месяца.
Способ пусть и простой, занимает от силы минуту, и из софта нужен только ворд и эксель, но весьма муторный. Запускать что-то, заменять, несколько раз копипастить. Потом еще курс ЦБ смотреть, множить…
А ведь хочеться чтобы само, раз ткнул мышкой – и посчиталось, и в рубли перевелось. В общем, убил вечер, что получилось – смотрите под катом. Тулза, как минимум для меня, весьма удобная.
ЗЫ вставлять статы можно сразу из сапы, в формате
2008-08-15 1.47
2008-08-14 1.48
2008-08-13 1.48
Можно через ентер засунуть статы сразу от всех сайтов.
if (!empty($_POST['statistika'])) {
$str= preg_replace("/\t|\n/", " ", $_POST['statistika']);
$array=explode(" ", $str);
$sum=0;
foreach($array as $value) {
if (preg_match("/\./", $value)) {
$sum += $value;
}
}
echo "
Итого: $sum $ ";
function get_content() {
$date = date("d/m/Y");
$link = "http://www.cbr.ru/scripts/XML_daily.asp?date_req=$date";
$fd = fopen($link, "r");
$text="";
if (!$fd) {
echo "Запрашиваемая страница не найдена";
}
else {
while (!feof ($fd)) $text .= fgets($fd, 4096);
}
fclose ($fd);
return $text;
}
$content = get_content();
$pattern = "#
preg_match_all($pattern, $content, $out, PREG_SET_ORDER);
foreach($out as $cur) {
if($cur[2] == 840) {
$dollar = str_replace(",",".",$cur[4]);
}
}
$date = date("d/m/Y");
$sum;
$sum *= $dollar;
echo '
Курс ЦБ на ' . $date . ' 1$ = ' . round($dollar, 2) . ' р., итого в рублях: ' . round($sum, 2) . ' р.';
}
?>
Комментарии
На сапе как оказывается можно организовать весьманеплохой заработок в интернете :)