get_meta_tags

(PHP 3 >= 3.0.4, PHP 4, PHP 5)

get_meta_tags --  ファイル上のすべてのメタタグ情報を配列に展開する

説明

array get_meta_tags ( string filename [, bool use_include_path] )

filename内の各行をパースし <meta> タグ 内の情報を配列として返します。 ローカルファイルのほかURLも指定できます。 </head>でパースを終了します。

use_include_pathTRUE に指定すると include_pathディレクティブの 内容にしたがってファイルを探します。これはローカルファイルにのみ有効で、 URLの場合は使用できません。

例 1. What get_meta_tags() parses

<meta name="author" content="name">
<meta name="keywords" content="php documentation">
<meta name="DESCRIPTION" content="a php manual">
<meta name="geo.position" content="49.33;-86.59">
</head> <!-- parsing stops here -->
(改行コードに注意してください。PHPは入力をパースするためにネイティブ関数を使用するため、 MacintoshのファイルはUNIX上では動作しません)

name属性の値が配列のキーとなります。content属性の値が配列の要素となります。 標準の配列関数を利用することでこれらの値に簡単にアクセスすることができます。 name属性で特別な文字が使われている場合は'_'で代用されます。 それ以外は小文字に変換されます。もしも同じ名前のメタタグがある場合には 最後のものが返されます。

例 2. What get_meta_tags() returns

<?php
// 上のタグはwww.example.com上のものだと仮定します
$tags = get_meta_tags('http://www.example.com/');

// すべてのキーが小文字であり、.(ピリオド)は_に置換されている
// ことに注目してください。
echo $tags['author'];       // name
echo $tags['keywords'];     // php documentation
echo $tags['description'];  // a php manual
echo $tags['geo_position']; // 49.33;-86.59
?>

注意: PHP 4.0.5以降、get_meta_tags()は クォートされていないHTML属性もサポートしています。

htmlentities()urlencode()も参考にしてください。