- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/lib/composite/helper.php
- Класс: BitrixMainCompositeshares
- Вызов: shares::writeStatistic
static function writeStatistic($hits = 0, $writings = 0, $quota = 0, $posts = 0, $files = 0.0)
{
$options = self::getOptions();
if ($options["WRITE_STATISTIC"] === "N")
{
return;
}
$fileName = self::getEnabledFilePath();
if (!file_exists($fileName) || ($fp = @fopen($fileName, "r+")) === false)
{
return;
}
if (@flock($fp, LOCK_EX))
{
$fileValues = explode(",", fgets($fp));
$cacheSize = (isset($fileValues[4]) ? doubleval($fileValues[4]) + doubleval($files) : doubleval($files));
$newFileValues = array(
$hits === false ? 0 : (isset($fileValues[0]) ? intval($fileValues[0]) + $hits : $hits),
$writings === false ? 0 : (isset($fileValues[1]) ? intval($fileValues[1]) + $writings : $writings),
$quota === false ? 0 : (isset($fileValues[2]) ? intval($fileValues[2]) + $quota : $quota),
$posts === false ? 0 : (isset($fileValues[3]) ? intval($fileValues[3]) + $posts : $posts),
$files === false ? 0 : ($cacheSize > 0 ? $cacheSize : 0),
);
fseek($fp, 0);
ftruncate($fp, 0);
fwrite($fp, implode(",", $newFileValues));
flock($fp, LOCK_UN);
}
fclose($fp);
}