前提・実現したいこと
HTMLサイトから指定した文字を抜き出したい
入力されたURLのタイトルを表示するプログラムを書いています。
発生している問題・エラーメッセージ
Notice: Trying to get property 'nodeValue' of non-object in C:\xampp\htdocs\comps\referredSite.php
non-objectとの表示ですが、なぜなのか解決できませんでした。
該当のソースコード
PHP,xPath,html ソースコード <?php // 入力されたURLを取得。今回は(https://www.yahoo.co.jp/)としています。 $html = $_POST['url']; echo $html;//http://www.yahoo.co.jp // 文字化け回避 $html = mb_convert_encoding($html,'HTML-ENTITIES','auto'); $dom = new DOMDocument; $dom->loadHTML($html); echo $dom->saveHTML(); //ここまで問題なし $xpath = new DOMXPath($dom); // タイトル取得 $title = $xpath->query('/html/head/title')->item(0); echo $title->nodeValue;; echo "<br>"; var_dump($title);
試したこと
入力したURLはヤフーにしています。(https://www.yahoo.co.jp/)
xPath('/html/head/title')は間違っていないのですが、$titleには何も代入されていません。
最終行のvar_dump($title)でもNULLが返ってきます。
https://teratail.com/questions/241986
↑も参考にしましたが配列ではないようですし解決しませんでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/06 06:20
2020/06/06 06:23
2020/06/06 12:29