0

ポートフォリオ サイトにhttp://retinajs.com/ (Retina.js) を使用しています。Retina.js では、@2x イメージを同じファイル名と拡張子を使用して同じディレクトリ内に配置する必要があります。たとえば、デバイスがより高い DPI を使用していることを retina.js が認識すると、image01.jpg は image01@2x.jpg に置き換えられます。

私の問題は、ディレクトリ内のすべての画像ファイルを取得してページに表示するために PHP glob 関数も使用していることです。これは、通常の 72 dpi 画面でも @2x 画像を同時にプルすることを意味します。ただし、@2x 画像は、より高い DPI の画面にのみロードすることになっています。

私の単純なPHPコードは次のとおりです。

$files = glob('images/projects/'.$filename.'/*.{jpg}', GLOB_BRACE);

    foreach($files as $file) {

        echo '<img src="'.$file.'" title="'.$title.'" />';

    }   

retina.js と PHP glob を連携させる方法はありますか? 私の目標は、通常の 72dpi 画面の @2x 画像を除く、ディレクトリ内のすべての画像を取得することです。

前もって感謝します!

4

1 に答える 1

1

簡単な方法:

foreach($files as $file) {
    //check that the file doesn't have @2x in the name.
    if(strpos($file, '@2x')===false){
        echo '<img src="'.$file.'" title="'.$title.'" />';
    }
}  
于 2013-02-01T00:08:45.670 に答える