2016-11-01 4 views
0

Привет всем им вернуться с новой проблемой, я понятия не имею, почему это не работает ...Если команда не работает с дополнительными условиями

Хорошо это моя команда IF

if(file_exists(__DIR__."/uploads/json_".$hash) && 
filesize(__DIR__."/uploads/json_".$hash) > 100 && 
time()-filemtime(__DIR__."/uploads/json_".$hash) < 168 * 3600 ===FALSE) 

Что я пытаясь сделать это .... A) проверьте, существует ли файл и превышает 100 байт, а не старше, чем неделю ...

Мне действительно нужно встроенное решение, так как мне нужно найти и заменить в блокноте как У меня это в нескольких местах в моем сценарии

Любая помощь будет большим

Ok здесь полный код игнорировать ## URL ## и ## ключ ## с моей последней попытки группы

$hash = hash("sha1","##key##"); 

if(file_exists(__DIR__."/uploads/json_".$hash) && (filesize(__DIR__."/uploads/json_".$hash) > 100) && (time()-filemtime(__DIR__."/uploads/json_".$hash) < 168 * 3600)){ 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, "###URL###"); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); 
    curl_setopt($ch, CURLOPT_HEADER, FALSE); 
    $credits = curl_exec($ch); 
    curl_close($ch); 

    $f = fopen(__DIR__."/uploads/json_".$hash,"wb"); 
    fwrite($f,$credits); 
    fclose($f); 
     echo " 
<script> 

    alert(\"Updated Record\"); 

</script>"; 
    }else { 
     $credits = file_get_contents(__DIR__."/uploads/json_".$hash); 
    } 

$creditsun= json_decode($credits, true); // Decode the results into an array 
+0

Так что, если любой из 3-х условий помечаются обновляет файл JSon –

+0

Почему '=== FALSE' ??? – AbraCadaver

+0

Когда я удаляю === FALSE, он всегда имеет флаги: S –

ответ

1

Remove === FALSE в конце ?

if (file_exists(__DIR__."/uploads/json_".$hash) && 
     filesize(__DIR__."/uploads/json_".$hash) > 100 && 
     time()-filemtime(__DIR__."/uploads/json_".$hash) < 168 * 3600) { 
// do stuff here 
} 

EDIT:

отрицанием получается путем размещения! на передней панели всего условия:

if (!(file_exists(__DIR__."/uploads/json_".$hash) && 
     filesize(__DIR__."/uploads/json_".$hash) > 100 && 
     time()-filemtime(__DIR__."/uploads/json_".$hash) < 168 * 3600)) { 
// do stuff here 
} 

EDIT2:

Посмотрите на эту страницу вручную PHP Logical Operators

+0

Думаю, мне нужен ЛОЖЬ, потому что вокруг я получил свою команду? –

+0

, так что если файл не exsit и не превышает 100 байтов и не новее, то неделя запускает этот код .... –

+1

Затем сделайте if (! (File_exists (__ DIR __.)/Uploads/json _ ". $ Hash) && filesize (__DIR __. "/ Uploads/json _". $ Hash)> 100 && time() - filemtime (__ DIR __.)/Uploads/json _ ". $ Hash) <168 * 3600)) { // Делаем здесь } –

Смежные вопросы