ITメモ
PHP
PHP マニュアル(PHP Official Web)
Basic Knowlege / 基礎知識
「CentOS」にPHPをインストール方法PHPファイルの作り方外部「クラスファイル」「関数ファイル」を読み込む方法変数の使い方定義済み変数の使い方関数の使い方配列の使い方クラスの使い方ヒアドキュメントの使い方PHPの演算子条件分岐
Access Info / アクセス インフォ
IPアドレスを確認する方法アクセスされたURLパスを確認する方法PCとスマートフォンの判定アクセスしたページから特定ページにリダイレクトさせる方法
ファイル・ディレクトリ
ファイルとディレクトリの操作方法(作成・確認・削除)ディレクトリ内のファイル・ディレクトリPath(URL)を配列に格納する方法
ファイルの読み込みと書き込み
「file_get_contents」関数を使ってファイルを読み込む方法「readfile」関数を使ってファイルを読み込む方法「file」関数を使ってファイルを読み込む方法「fread」関数を使ってファイルを読み込む方法「fgets」関数を使ってファイルを読み込む方法「fwrite」関数を使ってファイルに書き込みをする方法
チェック
「is_file」関数 - 指定パスがファイルかをチェックする方法「is_dir」関数 - 指定パスがディレクトリかをチェックする方法
画像ファイル
画像ファイルのIPTC情報を取得する方法 画像ファイルをZipファイル形式でダウンロードさせる画像をコピーする方法画像のキーワード情報を取得する方法画像ファイルから「EXIF」ヘッダを読み込む画像の大きさ・画像情報を取得する
情報
「PHP」の出力系関数 - プログラミングで必須のデータ内容をチェックする方法関数の返り値を複数で受け取る方法使用可能なメモリ使用量を変更する方法mb_send_mail - エンコード変換を行ってメールを送信する「Google」「Goolge Map]に渡した値が文字化けするときの解決方法PHPで日付比較をする方法
文字列
「文字列」の長さを取得する方法【 substr 】「文字列」から一部分を取り出す方法【 explode 】「文字列」を分割する方法【 preg_split 】正規表現で「文字列」を分割するランダムな数字を取得する方法
文字の検索
「strpos」関数で指定文字の最初の位置を確認する方法「preg_match」関数で指定した「正規表現」で検索する方法
文字の置換
「str_replace」関数で指定した文字列を置き換える方法「preg_replace」関数で指定した文字列を置き換える方法
文字の削除
「trim」関数 - 文字列の両端から指定文字を削除する方法「ltrim」関数 - 文字列の先頭から指定文字を削除する方法「rtrim」関数 - 文字列の末尾から指定文字を削除する方法文字列の中にある「文字」を削除する方法「改行」を削除する方法文字列の「空白(スペース)」を削除する方法
配列
配列に値を追加する方法配列の値を削除する方法配列の有無を確認する方法配列の中から重複した値を削除する配列の空の値を削除する配列の並び順を変えるis_array - 変数が配列かを確認するin_array - 配列の中に指定した値があるか確認するimplode - 値の間に文字加えて配列を文字列に変換するarray_merge - 配列と配列を結合する方法
ライブラリ
「PHP」で使えるライブラリの種類「GD」ライブラリの使い方
Server / サーバー
サーバーの最大実行可能時間を変更する





【PHP】画像のIPTC情報を取得する方法

【PHP】
画像のIPTC情報を取得する方法




「PHP」では、
「getimagesize()」「IPTCparse()」メソッドを使って、
画像の「IPTC」情報である「タイトル」「キーワード」「撮影情報」を取得できるようになっている。






IPTC情報とは


「IPTC」は、
写真などの画像全体の情報を区分している方法の一つで、
・画像情報
・撮影情報
・タイトル
・キーワード
・著作者
などを含んでいます。
「PHP」では、
「IPTC」情報を抽出するメソッドが用意されていて、

・「getimagesize()」
・「IPTCparse()」

を使って「IPTC」情報を抽出する。

撮影情報は、カメラで撮影した時点か、
PCでの現像処理時に、画像に残していなければ、
画像に撮影情報は残っていない。
撮影情報は、 ・GPS(位置情報)
・シャッタースピード
・F値(絞り値)
・ISO
・カメラ情報
などのこと。



Back



「PHP」で画像のIPTC情報を取得する方法


IPTC情報は、「IPTCparse()」メソッドで情報を抽出することで確認できます。


「IPTC」情報のカテゴリー

「IPTC」情報には、以下のカテゴリーがある。

・APP1
・APP2
・APP13
・APP14

画像の「タイトル」や「キーワード」撮影情報」が含まれているのは、
「IPTC」の「APP13」。
抽出すると配列形式で確認できる。


撮影情報は、カメラで撮影した時点か、
PCでの現像処理時に、画像に残していなければ、
画像に撮影情報は残っていない。
撮影情報は、

・GPS(位置情報)
・シャッタースピード
・F値(絞り値)
・ISO
・カメラ情報

などのこと。


「IPTC」の「APP13」の配列内容

array
(
'2#005'=>'DocumentTitle',
'2#010'=>'Urgency',
'2#015'=>'Category',
'2#020'=>'Subcategories',
'2#040'=>'SpecialInstructions',
'2#055'=>'CreationDate',
'2#080'=>'AuthorByline',
'2#085'=>'AuthorTitle',
'2#090'=>'City',
'2#095'=>'State',
'2#101'=>'Country',
'2#103'=>'OTR',
'2#105'=>'Headline',
'2#110'=>'Source',
'2#115'=>'PhotoSource',
'2#116'=>'Copyright',
'2#120'=>'Caption',
'2#122'=>'CaptionWriter'
);


IPTC情報を取得するサンプルコード


getimagesize("ファイルURL",$info);
$Get_IPTC_APP13= IPTCparse($info['APP13']);
$Get_IPTC_Keyword_Array=$Get_IPTC_APP13['2#025'];
var_dump($Get_IPTC_Keyword_Array);
echo "

";



Back