紅穆ノート
レコメンド 言語ノート PHPで、指定されたフォルダ内の任意のファイルをランダムに選択し、そのファイル名を返します。
言語ノート PHP

PHPで、指定されたフォルダ内の任意のファイルをランダムに選択し、そのファイル名を返します。

PHPで、指定されたフォルダ内の任意のファイルをランダムに選択し、そのファイル名を返します。

指定されたディレクトリ内の任意のファイル名をランダムに取得するためのPHP関数:

 隐藏内容:登录后可查看
function getRandomFileName($dir) {
  // 获取目录下所有文件
  $files = glob($dir . '/*.*');

  if (empty($files)) {
    return null;
  }

  // 随机选择一个文件
  $file = $files[array_rand($files)];

  // 返回文件名
  return basename($file);
}

この関数は1つのパラメータを受け取ります。 $dirこれは、ファイルのディレクトリパスをランダムに選択するように指定します。この関数はまず、 glob() 指定されたディレクトリ内のすべてのファイルのファイルパスを取得する関数を用い、その後にその結果を適用します。 array_rand() この関数は、任意のファイルをランダムに選択します。最後に、この関数が使用されます。 basename() この関数は、選択されたファイルのファイル名を取得し、それを返します。

指定されたディレクトリにファイルが存在しない場合、この関数は値を返します。 null

この関数は、以下の方法で呼び出せます:

$dir = '/path/to/files';
$filename = getRandomFileName($dir);

if ($filename !== null) {
  echo $filename;
} else {
  echo '指定目录下没有文件。';
}

其中、/path/to/files ファイルのディレクトリパスをランダムに選択します。関数を呼び出した際、関数はランダムに1つのファイルを選択し、そのファイル名を返します。指定したディレクトリにファイルが存在しない場合は、関数は空の値を返します。 null

二次需要

複数のファイル名を一度に返したいです!

 隐藏内容:登录后可查看
function getRandomFileNames($dir, $num) {
  // 获取目录下所有文件
  $files = glob($dir . '/*.*');

  if (empty($files)) {
    return null;
  }

  $count = count($files);

  // 如果文件数量不足 $num,则直接返回所有文件名
  if ($count <= $num) {
    $fileNames = array_map('basename', $files);
    return $fileNames;
  }

  // 随机选择 $num 个文件
  $randomIndexes = array_rand($files, $num);

  // 获取选中文件的文件名
  $fileNames = array();
  foreach ($randomIndexes as $index) {
    $fileNames[] = basename($files[$index]);
  }

  return $fileNames;
}

この関数は2つのパラメータを受け取ります。それぞれはディレクトリのパスです。 $dir 取得するファイルの数 $num。ディレクトリ内にファイルが存在しない場合は、空の値を返します。 nullファイル数が不足している場合 $numこの場合、直接「目次」にあるすべてのファイルのファイル名を返します。

ファイル数が十分に多い場合、すべてのファイルからランダムに選択します。 $num 1つのファイルを指定し、選択されたファイル名を配列に格納して返します。

この関数は、以下の方法で呼び出せます:

$dir = '/path/to/directory';
$num = 3;
$fileNames = getRandomFileNames($dir, $num);
print_r($fileNames);

其中、$dir ディレクトリパスです。$num 取得対象のファイル数を指定します。この関数は、ランダムに選択されたファイル名の配列を返します。

微信赞赏

WeChat

支付宝赞赏

Alipay

✍️ クリエイター: 紅穆

ウェブサイト管理者 · ご覧いただきありがとうございます!さらに多くの魅力的なコンテンツをお楽しみいただけますよう、引き続きご支援をお願いいたします。

著者プロフィール プロフィールを見る →

関連記事

PHPのob関数の記録

PHPのob関数の記録 言語ノート PHP

以下の3つの関数(`ob_get_contents()`、`ob_end_clean()`、`ob_start()`)を用いることで、ローカルファイルのバッファリングやローカルスクリプトコードの実行を実現できます。`ob_start()`を用いて出力されるコードをバッファに保存すると、ページは即座に表示されません。その後、`ob_get_contents()`を呼び出してバッファに保存されたデータを取得します。
👁 154
PHP preg

PHP preg 言語ノート PHP

`preg_match_all` 関数は、グローバルな正規表現マッチングを実行するために使用されます。`preg_match_all()` の構文は以下の通りです:`int preg_match_all( string $pattern , string $subject [, array &$matches [, int $flags = PREG… ] )`
👁 174
PHPにおける三項演算子と`if`文の詳細解説

PHPにおける三項演算子と`if`文の詳細解説 言語ノート PHP

三元演算子(? 表示式1 : 表示式2):説明:問号の前に続く部分が条件であり、条件が満たされた場合に表示式1、そうでない場合に表示式2が返されます。本記事では、三元演算子と `if...else...` 文を比較・詳細に解説しており、皆様の参考になれば幸いです。本日、論文のオンライン修正作業中に、以下の文が理解できなかったことに遭遇しました:`$if_summary = $row['IF_SUMMARY'] = ...`
👁 198
PHPにおける型強制変換

PHPにおける型強制変換 言語ノート PHP PHPデータ収集 PHPとMySQL

データ型の確認:1. 指定された式の値および型を確認する場合、`var_dump()` を使用します。2. デバッグ目的で、読みやすい型表現を取得する場合、`gettype()` を使用します。3. 指定された型を確認する場合は、`gettype()` ではなく `is_type()` 関数を使用してください。文字列を数値に変換:文字列が数値として評価される場合、結果は以下のルールに基づいて決定されます…
👁 240
PHPで指定された文字列が文字列に含まれているかどうかを判定するさまざまな方法

PHPで指定された文字列が文字列に含まれているかどうかを判定するさまざまな方法 言語ノート PHP

`str strstr()` 関数は、ある文字列が別の文字列内で最初に出現する位置を検索します。この関数は、一致した位置から始まる文字列の残りの部分を返します。対象の文字列が見つからない場合、`false` を返します。コード例:`< ?php $email = 'user@example.com'; $domain = strstr($email, ...
👁 145

おすすめ読書

PHPで圧縮されたファイルを解凍する際、中身に中国語で命名された圧縮ファイルが含まれている場合、なぜ解凍時にエラーが発生するのでしょうか?

PHPで圧縮されたファイルを解凍する際、中身に中国語で命名された圧縮ファイルが含まれている場合、なぜ解凍時にエラーが発生するのでしょうか? 落とし穴のまとめ

圧縮ファイル内のファイル名に中国語文字が含まれている場合、解処理後に文字化けが発生したり、解処理が不可能になったりする可能性があります。これは、圧縮ファイル内のファイル名で使用されている文字コードと、解処理プログラムで使用されている文字コードが一致していないためです。通常、圧縮ファイル内のファイル名はオペレーティングシステムのデフォルト文字コードでエンコードされていますが、解処理プログラムでは別の文字コードが使用されている場合があります。ファイル名に非ASCII文字(例:中国語文字)が含まれている場合…
👁 322
jQueryは、Cookieを用いてナビゲーションメニューに特別な`class`属性を付与します。

jQueryは、Cookieを用いてナビゲーションメニューに特別な`class`属性を付与します。 言語ノート JavaScript

jQueryを使用して、指定されたボックス内の`<a>`タグをクリックすると、その`<a>`タグのリンクを`cookie`に保存します。ページが転送された後、`cookie`に保存されたリンクと`<a>`タグのURLが一致するように設定するため、この`<a>`タグに属性を付加します。`cookie`には1つのみ保存されます。その後、ボックス内の他の`<a>`タグをクリックすると、リンクが直接`$(document).ready(function() { //…
👁 178
(PC+WAP)pbootcms ハイエンドホットポット底料・調味料向けウェブサイトテンプレート – マーケティング型飲食・グルメウェブサイト用ソースコードダウンロード(0015)

(PC+WAP)pbootcms ハイエンドホットポット底料・調味料向けウェブサイトテンプレート – マーケティング型飲食・グルメウェブサイト用ソースコードダウンロード(0015) 実用収集 pbootcmsテンプレート

本テンプレートは、高級ホットポット用底料および調味料業界向けのPbootCMSマーケティング用テンプレートであり、PCおよびWAP両端でご利用いただけます。魅力的なデザインと食欲を誘うスタイルにより、飲食店や調味料の商品紹介に最適です。本テンプレートには、商品展示、ブランドストーリー、フランチャイズ募集などの機能モジュールが統合されており、食品関連企業がオンライン上のブランドイメージを強化し、フランチャイズ事業の発展を促進するのに有効です。テンプレート表示・インストール手順:ウェブサイトの管理コンソール:/admin.php|アカウント:…
👁 40
(PC+WAP)WeChatミニアプリ開発・代理販売・販売 – pbootCMSウェブサイトテンプレート|ソフトウェア開発会社向けウェブサイトソースコードのダウンロード – 0046

(PC+WAP)WeChatミニアプリ開発・代理販売・販売 – pbootCMSウェブサイトテンプレート|ソフトウェア開発会社向けウェブサイトソースコードのダウンロード – 0046 実用収集 pbootcmsテンプレート

本PbootCMSテンプレートは、WeChatミニアプリ開発やソフトウェア開発会社向けのブランドプロモーションに特化しており、PCおよびWAPプラットフォームに対応しています。テクノロジー感あふれるデザインスタイルを採用しており、IT・インターネット関連企業に最適です。テンプレート内には「サービス一覧」「開発実績」「技術チーム紹介」などのモジュールが組み込まれており、ソフトウェア企業が効率的に顧客を獲得し、業界での評判を築くのに役立ちます。テンプレート表示・インストール手順:ウェブサイトバックエンド:/admin.php|ユーザー名:admin|パスワード:…
👁 68
(PC+WAP)苗木・芝生植栽関連ウェブサイト用PBootCMSテンプレート/緑色農業関連ウェブサイト用ソースコードダウンロード(0098)

(PC+WAP)苗木・芝生植栽関連ウェブサイト用PBootCMSテンプレート/緑色農業関連ウェブサイト用ソースコードダウンロード(0098) 実用収集 pbootcmsテンプレート

本PbootCMSテンプレートは、苗木や芝生の植栽、およびグリーン農業関連のウェブサイトに最適化されており、PCおよびモバイル端末からのアクセスに対応しています。自然に近いデザインスタイルにより、苗木の育成、芝生生産拠点、農業プロジェクトなどを効果的に紹介できます。農業種植企業がオンラインでブランドイメージを構築し、農産物や苗木の販売チャネルを拡大するのに役立ちます。テンプレート表示・インストール手順:ウェブサイトバックエンド:/admin.php|ユーザー名:admin|パスワード:admin|解凍用パスワード:…
👁 56
(スマートフォン向け適応型)レスポンシブ設計・環境配慮型・防錆対応の木材製ウェブサイトテンプレート – pbootCMSウェブサイトテンプレートソースコードダウンロード(0306)

(スマートフォン向け適応型)レスポンシブ設計・環境配慮型・防錆対応の木材製ウェブサイトテンプレート – pbootCMSウェブサイトテンプレートソースコードダウンロード(0306) 実用収集 pbootcmsテンプレート

このセットは、スマートフォン向けの適応型レスポンシブデザインを採用した、環境に配慮した防腐処理木材および軽量鉄骨ヴィラ用建材を対象としたPbootCMSウェブサイトテンプレートです。自然で環境に配慮したデザインスタイルにより、防腐処理木材や軽量鉄骨ヴィラなどのグリーン建材製品の紹介に最適です。新興建材企業が自社製品をオンラインで紹介し、建築・園芸分野の顧客を惹きつけるのに役立ちます。テンプレートの表示・インストール方法:ウェブサイトバックエンド:/admin.php|ユーザー名:admin|パスワード:admin|解凍用パスワード:www.4…
👁 46