ファイル操作

【PHP】指定フォルダ内にある画像ファイルの一覧からランダムで1つ選ぶ

皆さん、こんにちは(こんばんは)、「大-はなまる」です。

はじめに

わたしは写真を撮るのが好きで、Twitterに写真を投稿するのですが、特に公に晒してもいい写真を1つのフォルダに集め、そこから写真を一枚選んでTwitterに投稿しています。もちろん「写真を一枚選んで、Twitterへ投稿」という部分はPHPに任せています。

嫁ちゃん
嫁ちゃん
電車の写真ばっかり撮っているよねー。
他は何かないのかな?
わたし
わたし
そやなー、
あえていうなら、花のマクロ撮影なんかは楽しいくてよく撮っているよ。
脱線、脱線。。。

ただ、いま現状だと、ファイル一覧を取得してきた順(おそらく更新日付の降順?)になっており、写真を撮っては、フォルダに格納すればするほど、古い写真の投稿が後回しになってしまうことになるので、どうせなら、ランダムに写真をTwitterにアップしようかと思いこの記事を書いております。

概要

ファイルの一覧を取ってくるコードは以前、このブログで書きましたね。

PHP】指定されたパスにあるファイル一覧を取得する glob()

ファイルパスが入った配列がありますので、そこから1つランダムに選ぶ処理をさせてみます。

コード

PHP
<?php $arrayPath = glob('/sample/folder/*'); // <-- 取得したいパスを指定 if ( count( $arrayPath ) > 0 ) { srand(); $i = rand( 0, count( $arrayPath ) - 1 ); echo ( $i + 1 ) . ' : ' . $arrayPath[$i]; } ?>

実行結果

実行結果
38 : /sample/folder/aaa.jpg

参考サイト

[PHP: glob – Manual]

[PHP: srand – Manual]

[PHP: rand – Manual]

この記事がお役に立ちましたら幸いです。
ブログランキングに参加しております。よろしければクリックお願いいたします。
にほんブログ村 IT技術ブログ PHPへ
※本サイトに掲載する情報には充分に注意を払っておりますが、その内容について保証するものではありません。
※本サイトの使用ならびに閲覧によって生じたいかなる損害にも責任を負いかねます。

コメント

タイトルとURLをコピーしました