サーバー内のある特定のディレクトリ内にあるファイル一覧を取得し、JSONで出力するPHPを作成する方法です。
サンプルコードの仕様
・ある特定の文字列を含むファイル名のみ抽出できるように引数にキーワードを指定します。
・配列からJSONへの変換は、PHP5.3標準のjson_encodeを使用します。
日本語対応
しかし日本語部分がunicodeでエスケープされて出力されてしまうので、下記サイトのラッパー関数json_xencodeを使用しました。
PHPでUnicodeアンエスケープしたJSONを出力する関数 – オープンソースこねこね
※PHP5.4以降では、JSON_UNESCAPED_UNICODEのオプションを指定すると回避できるようです。
<?php mb_regex_encoding("UTF-8"); if(isset($_GET['key'])) { $key = $_GET['key']; } $filelist = array(); $path = "/var/www/wp/wp-content/uploads/table/"; if ($handle = opendir($path)) { while (false !== ($file = readdir($handle))) { if (mb_ereg_match(".*$key.*",$file)) { $filelist[] = $file; } } closedir($handle); } $filelist = json_xencode($filelist); print_r($filelist); ?>関連記事の目次
-
インストール、設定
- PHPの設定、更新時の参考情報メモ
- PHPのインストール
- CentOS6でPHP5.3からPHP7.1へアップデート
- CentOS6.10でPHP7.1からPHP7.2へアップデート
- CentOS Stream9でPHP7.4をインストールする手順
- CentOSでPHPのマルチバイト文字列(MBstring)関数を使えるようにする
- PHPでタイムスタンプをログファイルに記録
- PHPのバージョンが表示されないようにする
- セキュリティを考慮した/etc/php.iniの設定
- CentOS6でAPC(Alternative PHP Cache)をインストール、チューニング
- PHPスクリプトで出力データを圧縮する方法
- PHPの変数、スコープ
- PHPの型の概要、種類
- PHPのクラス操作の概要
- PHPの配列操作の概要
- PHPで文字列のマッチング
- require,require_once,include,include_onceの違い
- CentOS環境のPHPでPDOを使ってMySQLからJSONでデータ取得
- PHPでHTMLテーブルをJSONに変換
- PHPでディレクトリ内のファイル一覧をJSONで出力
- PDOを使ってテーブルに保存
- PDOでSQLインジェクション対策
- phpとpChartを使ってWebサイトにグラフ表示
性能
プログラミングの基本
PDO、データベース、JSON
その他