如果文件名为.jpg存在,则执行A,否则执行B


If file with name.jpg exists do A else do B

我需要开发一个小PHP脚本,我可以从一个cron作业中运行,在伪代码中执行以下操作:

//THIS IS PSEUDO CODE
If(file exists with name 'day.jpg')
    rename it to 'fixtures.jpg'
else
    copy 'master.jpg' to 'fixtures.jpg'

其中day.jpg应为当月的当前日期。

我开始用我很确定怎么做的东西来替换伪代码:

<?php
    if(FILE EXISTS WITH NAME DAY.JPG) {
        rename ("DAY.JPG", "fixtures.jpg");
    } else {
        copy ("master.jpg", "fixtures.jpg");
    }
?>

显然还有一些东西缺失。就像我需要得到当前日期的文件名,我需要检查文件是否存在。

我想我需要做一些像这样的$filename='date('j');'.jpg来获得文件名,但它不是真的工作,所以我有点需要一点帮助。另外,我真的不知道如何检查文件是否存在?

$path = __DIR__; // define path here
$fileName = sprintf("%s%d.jpg", $path, date("j"));
$fixtures = $path . DIRECTORY_SEPARATOR . "fixtures.jpg";
$master   = $path . DIRECTORY_SEPARATOR . "master.jpg";
file_exists($fileName) ? rename($fileName, $fixtures) : copy($master, $fixtures);

基本上你需要上面的脚本,但你需要在你的路径上工作。你上面的代码有语法问题。

你有一个基本的语法问题,它应该是:

$filename = date('j') . '.jpg';

你不把函数调用放在引号里,你需要在字符串'.jpg'周围加上引号,你需要使用.来连接它们。

我建议你阅读PHP教程中关于字符串的章节