0

サンプルがあります

$image_src = array(
'image1.jpg',  //Yes
'image2.jpg',  //This image is 404
'image3.jpg'   //Yes
);
for($i=0; $i<count($image_src); $i++) {
   if(!file_exists($image_src[$i])) {
      $image_src[$i] = 'image_change.jpg';
   }
}
print_r($image_src);

しかし、実行結果がすべてを表示するときimage_change.jpg

[0] => 'image_change.jpg',
[1] => 'image_change.jpg',
[2] => 'image_change.jpg'

結果は正確に次のとおりです。

[0] => 'image1.jpg',
[1] => 'image_change.jpg',
[2] => 'image3.jpg'

=>それを修正する方法

4

2 に答える 2

2

ファイル名はファイルの完全なパスである必要があります。呼び出す前に、ファイルのベースディレクトリを設定してください。

for($i=0; $i<count($image_src); $i++) {
   if(!file_exists($imageBaseDir . '/'. $image_src[$i])) {
      $image_src[$i] = 'image_change.jpg';
   }
}
于 2012-12-10T15:57:39.113 に答える
1

file_exists()ではなく、を使用したいfile_exist()

于 2012-12-10T15:56:08.473 に答える