1
ご挨拶、私はjQueryの写真スライダーの形で、サイトのフロントページに特集フォトアルバムから4枚のランダム写真を追加してい選択ランダム写真、PHP
。すべての画像が同じサイズでなければならないので、水平の写真のみを選択してシャッフルし、4にトリミングします。ここで使用しているコードはあります。私の質問 - これを行うためのより簡単で、おそらくより効率的な方法がありますか?または私の方法はかなり健全ですか?
ありがとうございます!
$getImages = $gallery_db->query("SELECT * FROM images WHERE album = '5'"); //sample SQL
$imagesArr = array();
while ($image = $getImages->fetch()) {
$path = "http://somewhere.com/gallery/photos/" .
$image['album'] . "/" . $image['filename'] . ".jpg"; //All files are .jpg
list ($width, $height) = getimagesize($path);
if ($width > $height) {
$imagesArr[] = $path;
}
}
shuffle($imagesArr);
array_splice($imagesArr, 4)
を出力するように、その後、:
foreach ($imagesArr as $path) {
echo "<img src=\"$path\" width=\"220\" height=\"110\"/><br/>\n";
}
これはまったく悪い考えではありません。私は、既存のアルバムを通って、手動で各サイズを入力して、私が上記と同じ方法で各行を更新できることを痛感するとタイプしようとしていました。ありがとう:) – NightMICU
うん、ちょうどあなたの画像をループし、getimagesizeを使用して寸法を得る:)。 – alexn