1

我已经准备了这段代码,正如你所见,我已经注释掉了我的问题区域

//prepare the image file path that includes the isbn in the file name
    $imageFilePath = '"./data/images/' . $book[0] . '.jpg"';

            // Debugging
    // $var = "==>" . file_exists($imageFilePath) . "<==is it true?";
    // $str .= $var;
    // //tests if file is NOT there, if it isn't the imagepath reflects the default image
    // if (file_exists($imageFilePath) == false){

        // $imageFilePath = '"./data/images/default.jpg"';
    // }

我的图像路径变量就像一个魅力,现在如果文件不存在,我想使用默认图像。当 if 语句未注释时,我的所有图像都成为默认图像

我试过 is_file 和 file_exists,但无济于事。您还可以看到我尝试使用 $var 变量捕获结果,==> 和 <== 之间没有空格。

我刚刚开始学习编程,一般来说,我通常能够在这里和那里使用回声或使用互联网进行调试。我找不到解决方案。

非常感谢所有帮助,并在此先感谢

4

2 回答 2

1

你可以做这样的事情

$imageFilePath = "somethingToCheck";
$imageFilePathDefault = "somethingDefault";
$imageFilePath = file_exists($imageFilePath) ? $imageFilePath : $imageFilePathDefault;

对于file_exists接受的解释和论据,请看这里

对于第三行代码,让我们将其解释为:

if(file_exists($imageFilePath))
 $imageFilePath = $imageFilePath; //confirm that is valid
else
 $imageFilePath = $imageFilePathDefault; //change to default

编辑后编辑,我还建议从您的路径中删除双重配额

于 2012-05-08T21:34:31.377 回答
1

去掉双引号:

$imageFilePath = './data/images/' . $book[0] . '.jpg'; 
于 2012-05-08T21:34:45.443 回答