• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PHPでhtmlファイル群から要素の中身を取出す)

PHPでhtmlファイル群から要素の中身を取出す

このQ&Aのポイント
  • Windows版PHP(cli_php)を使って、あるフォルダ配下のhtmlファイル(深いサブディレクトリにもあり)の、URL、ファイル名、<title>の中身、<h1>の中身、<meta name="keywords" content="ここの中身">、<meta name="decripition" content="ここの中身">を取得する方法を教えてください。
  • <meta name="keywords" content="ここの中身">のキーワードの個数と、<h1>の中身が全角26文字(半角2文字=全角1文字計算)以内かどうかを判別する方法を教えてください。
  • あるフォルダ配下のhtmlファイル(深いサブディレクトリにもあり)から要素の中身を取得する方法や、<meta name="keywords" content="ここの中身">のキーワードの個数と、<h1>の中身が指定の文字数以内かどうかの判別方法を教えてください。一覧はCSV形式で抽出したいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • shimix
  • ベストアンサー率54% (865/1590)
回答No.1

>深いサブディレクトリのhtmlファイルを読み取るのが(ディレクトリのループ) >かなり忘れているので、これをお教えいただけると幸いです。 マニュアルのglobのところにサンプルがあります。 http://php.net/manual/ja/function.glob.php 多分、こんな感じで取得出来るんじゃないかと。 <?php $array = glob_recursive('*.html'); print "<pre>"; print_r($array); print "</pre>"; function glob_recursive($pattern, $flags = 0) { $files = glob($pattern, $flags); foreach (glob(dirname($pattern).'/*', GLOB_ONLYDIR|GLOB_NOSORT) as $dir) { $files = array_merge($files, glob_recursive($dir.'/'.basename($pattern), $flags)); } return $files; }

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • meta nameに入れる文字は、全角2文字?

    <meta name="description" content=""> <meta name="keywords" content=""> の中に入れる文字は、全角2文字(4byte)のほうがヒットしやすいって本当ですか? 私が入れたい文字は、「英文字3文字スペースカタカナ7文字」なのですが これだとロボットは拾ってくれないのでしょうか?

    • ベストアンサー
    • HTML
  • <title>~<title>部分にPHP読み込み

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" /> <meta name="keywords" content="" /> <meta name="description" content="" /> <title>●●●●●●</title> <meta http-equiv="content-script-type" content="text/javascript" /> </head> <body> ~ 上記<title>●●●●●●</title>部分の、●●●●●●にtitle.phpの内容を挿入したく、 <?php require("title.php"); ?> と記述したのですが、エラーが出てしまいます。 title.php単体では正常に文字が表示されます。 どのように記述したら良いか、どなたかご教授いただけないでしょうか。 宜しくお願い致します。

    • ベストアンサー
    • PHP
  • SafariでPHPソースがそのまま表示される

    Safariでindex.phpを開くとソースコードがそのまま表示されてしまいます。 拡張子をphpとしているだけでソース内にはphpスクリプトは記述しておりません。 なぜでしょうか? ※ファイル名をindex.htmlに変えると正しく表示されます。 Windows 7 Home Premium 64bit Safari5.1.5 ソースコードのエンコーディング:utf-8 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta http-equiv="content-style-type" content="text/css" /> <meta http-equiv="content-script-type" content="text/javascript" /> <meta name="keywords" content="" /> <meta name="description" content="" /> <title>テストtitle> </head> <body> <h1>テストページ</h1> </body> </html>

  • 孫ファイルに書き込むメタタグは何が必要?

    トップページのindexからみて孫にあたるhtmlファイルにどのようなメタタグを書き込んだらいいでしょうか? 今はトップページと同じく <meta http-equiv="Content-Type" content="text/html; charset=shift_jis"> <meta http-equiv="Content-Style-Type" content="text/css"> <meta name="description" content=""> <meta name="Keywords" content=""> の4つを書き込んでいます。

    • ベストアンサー
    • HTML
  • SEO対策でキーワードの書き方に関する質問です。

    SEO対策でキーワードの書き方に関する質問です。 HTMLのメタタグ、keywordsの書き方なのですが、 <meta name="keywords" content=",カップル 旅行," /> の様に、半角カンマで区切った中に2単語を全角スペースで区切って入れる この書き方は正しいのでしょうか? また、 <meta name="keywords" content=",カップル旅行,カップル 旅行," /> と、同内容を一方はそのまま、片方は全角スペースで区切って連記して書く、この方法は 正しいのでしょうか? わかりづらいかも知れませんが、宜しくお願いします。

    • ベストアンサー
    • HTML
  • メタタグの最適なキーワードの数

    以下のメタタグを入れる際、最適なキーワード数、文字数とかってあるのでしょうか? <meta name="Keywords" content="←いくつ?? <meta name="Description" content="←何文字?

  • meta name="keywords"って?

    質問カテゴリもここでいいものか判らないのですが、 ホームページの検索キーワードの単語を <meta name="keywords" content="~~"> とやっている場合、~~の文字に半角全角大文字小文字の 区別はついてくるんでしょうか? 細かく、例えば「august」「AUGUST」「augast」「AUGUST」 を全部入れとかなきゃならないものでしょうか? ご回答よろしくお願いします。

  • [HTML-PHP]あるPHPファイルだけ文字化け

    お世話になります。 XP/PHP5.2.9/Apache2.2.11 の環境で、簡単なシステムを作っているのですが、その際に PHP側で header( "Content-Type: text/html;charset=shift_jis"); HTML側で <meta http-equiv="content-type" content="text/html; charset=shift_jis"> と明示的にSJISにしているのですが、実際にローカルで確認すると文字化けしてしまうPHPファイルがあります。(1ファイルのみ) 他のPHPファイルは同様のヘッダー情報を送信していますが、文字化けせずに画面出力されています。 HTML-PHP初心者のため、補足等必要になるとは思いますが、どうぞご教授下さい。

    • ベストアンサー
    • PHP
  • タグについて

    <meta http-equiv="keywords" content="" /> <meta name="keywords" content="" /> 上記のように二種類あるのですが、どちらが良いのでしょうか? また、<meta name="robots" content="all" /> このような記述は省略しても、検索に引っかかるのでしょうか? 一度にすいません。どなたかご教授お願いします。

    • ベストアンサー
    • HTML
  • もっともよく検索される方法

    もっともよく検索される方法 gooの検索で自分のHPがよくHITされる方法を教えてください。 <meta name="description" content=""> <META name="keywords" content=""> なんかは有効なんでしょうか? それと私のHPはフレーム付なんですが注意点なんかあったら教えてください。 と昔のlogにあったんですけど <meta name="description" content=""> <META name="keywords" content=""> の意味がわかりません。 だれか教えてください