5

「uniqueId-readableName.jpg」という厳密な命名規則を持つサーバーに一連の写真があります。私のウェブサイトのデータベースは現在、uniqueID (およびいくつかの無関係な情報) のみをログに記録しますが、ファイル サーバーを直接見て (FTP 経由で) 写真を参照する必要があるため、読み取り可能な名前が役立つため、これを行います。例えば

001456-War Horse.jpg
003295-Sunshine Daiseys.jpg
129084-Laboring at the farm 2013-08-11.jpg

さて、最良の選択肢は完全なファイル名の記録をデータベースに設定することだと確信していますが、私が見逃した可能性のあるアイデアを誰かが持っているかどうかを知りたかっただけです. SOに関するこの質問は似ていますが、ここでは厳密な命名規則があります-それが可能性を開くかどうかはわかりません.

私はこれを に適用してimgいますが、同じアイデアを任意のファイル拡張子に適用できます (たとえば、「789-My Homework.zip」または「123-Family Vacation.zip」をダウンロードします)。

私が探しているものの例として、Windows エクスプローラーでファイル検索を行うことができます

0*.jpg

次のすべてのファイルを返すことができます

001456-War Horse.jpg
003295-Sunshine Daiseys.jpg
029084-Laboring at the farm 2013-08-11.jpg

001456-*.jpg私の場合、最初の部分は常に一意であるため、次のようなものを使用して returnにしたいと考えてい001456-War Horse.jpgます。

ウェブサイトでこれを行う方法はありますか?

<img src="001456-*.jpg" />
4

1 に答える 1

6

そのような方法はありませんが、必要な機能を実現するためにサーバー側のスクリプトを実行することはできます。

たとえば、PHP では、組み込みコマンドを使用してフォルダーを参照し、「001456-*.jpg」という基準名に一致するすべてのファイルを選択し、返されたレコードの数に応じて最初のファイル名を選択し、それを IMG に挿入できます。鬼ごっこ。

PHP での実装例を次に示します。

$files = array();
$id = "001456";
$files = glob("id-*.jpg");

echo "<img src='$files[0]' />"; //Assuming one file is found for every unique ID.
于 2013-08-26T04:47:40.253 に答える