0

ファイルの横にファイルタイプのアイコンを出力する簡単な関数がありますが、何らかの理由file_exists()で常にfalseを返します。生成されているパスを出力しましたが、「default.png」には明らかに存在します。ここで何かが足りませんか?

URLとファイルパスを使用してみましたが、どちらも常にfalseを返します。

それが問題であるかどうかをテストするために、すべてのファイルの許可を777に設定しましたが、それは機能しませんでした。

/**
 * Displays the logo for the file type passed to the function
 *
 * @param required string $file_type The file type to display an icon for
 */
function show_file_type($file_type){

    $file_types_folder = get_bloginfo('template_directory').'/includes/images/file_types/';

    if(file_exists($file_types_folder.$file_type.'.png')) :
        $file_type_image = $file_types_folder.$file_type.'.png';
    elseif(file_exists($file_types_folder.'default.png')) :
        $file_type_image = $file_types_folder.'default.png';
    else :
        return false;
    endif;

    echo '<img src="'.$file_type_image.'" width="20"/>';

}
4

1 に答える 1

0

I'm having this issue also. According to the docs you should call clearstatcache(); before calling file_exists(); when the file is created or deleted during the same script execution. Let us know if it works!

于 2013-03-12T19:27:20.827 に答える