- Модуль: main
- Путь к файлу: ~/bitrix/modules/main/lib/page/asset.php
- Класс: BitrixMainPageAsset
- Вызов: Asset::write
function write($filePath, $content, $gzip = true)
{
$fnTmp = $filePath.'.tmp';
if (!CheckDirPath($filePath) || !$fh = fopen($fnTmp, "wb"))
{
return false;
}
$written = fwrite($fh, $content);
$len = strlen($content);
fclose($fh);
if (file_exists($filePath))
{
@unlink($filePath);
}
$result = false;
if ($written === $len)
{
$result = true;
rename($fnTmp, $filePath);
@chmod($filePath, BX_FILE_PERMISSIONS);
if ($gzip && self::gzipEnabled())
{
$fnTmpGz = $filePath.'.tmp.gz';
$fnGz = $filePath.'.gz';
if ($gz = gzopen($fnTmpGz, 'wb9f'))
{
$writtenGz = @gzwrite ($gz, $content);
gzclose($gz);
if (file_exists($fnGz))
{
@unlink($fnGz);
}
if ($writtenGz === $len)
{
rename($fnTmpGz, $fnGz);
@chmod($fnGz, BX_FILE_PERMISSIONS);
}
if (file_exists($fnTmpGz))
{
@unlink($fnTmpGz);
}
}
}
}
if (file_exists($fnTmp))
{
@unlink($fnTmp);
}
return $result;
}