1755

Как исправить возникающую ошибку?

1 ответ

Ребят, ошибка на протяжении длительного времени public_html/system/library/cache/file.php возникает ошибка на 68 строки, в связи с отсутствием необходимого файла (No such file or directory)

код

<?php
namespace Cache;
class File {
private $expire;

public function __construct($expire = 3600) {
$this->expire = $expire;

$files = glob(DIR_CACHE . 'cache.*');

if ($files) {
foreach ($files as $file) {
$time = substr(strrchr($file, '.'), 1);

if ($time < time()) {
if (file_exists($file)) {
unlink($file);
}
}
}
}
}

public function get($key) {
$files = glob(DIR_CACHE . 'cache.' . preg_replace('/[^A-Z0-9\._-]/i', '', $key) . '.*');

if ($files) {
$handle = fopen($files[0], 'r');

flock($handle, LOCK_SH);

$data = fread($handle, filesize($files[0]));

flock($handle, LOCK_UN);

fclose($handle);

return json_decode($data, true);
}

return false;
}

public function set($key, $value) {
$this->delete($key);

$file = DIR_CACHE . 'cache.' . preg_replace('/[^A-Z0-9\._-]/i', '', $key) . '.' . (time() + $this->expire);

$handle = fopen($file, 'w');

flock($handle, LOCK_EX);

fwrite($handle, json_encode($value));

fflush($handle);

flock($handle, LOCK_UN);

fclose($handle);
}

public function delete($key) {
$files = glob(DIR_CACHE . 'cache.' . preg_replace('/[^A-Z0-9\._-]/i', '', $key) . '.*');

if ($files) {
foreach ($files as $file) {
if (file_exists($file)) {
unlink($file);
}
}
}
}
}

Ответы (1)

Asylum +208
11.02.2019 19:32
Opencart, как понимаю. Если навскидку, либо банально не хватает места на диске, лбо кому то не хватает прав )))

Похожие вопросы

Елена
17

Как удалить код из header

В файл header был добавлен код слайдера <?php echo do_shortcode('[metaslider id="1368"]'); ?>. Код удалить не получается система вордпресс пишет : Невозможно соединиться с сайтом для проверки кода на ошибки, был сделан...
Толя Багров
187

рестарт php

Здравствуйте В инструкции https://timeweb.com/ru/community/articles/instrukciya-po-nastroyke-vds-bazovaya-konfiguraciya-i-rabota-s-lemp-1 сказано заменить в php.ini строку ;cgi.fix_pathinfo=1 на  cgi.fix_pathinfo=0 и перезагрузить...
Арина
178

Код метрики

Как найти файлы страниц c кодом метрики на сервере через ftp? Метрика настроена в панели управления PHPShop
С помощью соцсетей
У меня нет аккаунта Зарегистрироваться
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
С помощью соцсетей
У меня уже есть аккаунт Войти
Нажимая кнопку «Зарегистрироваться», я даю согласие на обработку своих персональных данных, указанных в форме регистрации.
Инструкции по восстановлению пароля высланы на Ваш адрес электронной почты.
Пожалуйста, укажите email, который Вы использовали для входа на сайт.