PHP開発は初めてです。
今日、私はURLフラグメントの興味深いトピック、特にURLの#
部分に出くわしました。
検索してみたところ、
www.example.com\foo.html#bar
しかし、なぜこの#bar
が必要なのかわかりません。またはPHPでそれを読む方法は?
フラグメントは内部ページ参照であり、名前付きアンカーと呼ばれることもあります。通常、URLの最後に表示され、ハッシュ(#)文字で始まり、その後に識別子が続きます。 Webページ内のセクションを指します。
HTMLドキュメントでは、ブラウザはフラグメントに一致するname属性を持つアンカータグを探します。
フラグメントにはいくつかの点があります。最も重要なのは、フラグメントがHTTPリクエストメッセージで送信されないことですが、フラグメントに関する詳細については、 このページ を参照してください。
Javascriptは、現在のページのフラグメントを操作できます。これを使用して、完全なリロードを強制することなく、ページの履歴エントリを追加できます。
PHPでフラグメントを読み取るには、 'parse_url($ url、PHP_URL_FRAGMENT)'関数を使用できます。この関数は組み込みのPHP関数です。follow。例はそれを使用する方法を理解するのに役立ちます:
$url = 'www.example.com\foo.html#bar';
echo '<pre>';
var_dump(parse_url($url, PHP_URL_FRAGMENT));
echo '</pre>';
結果は次のとおりです。
string(3)「バー」
parse_urlの詳細については、読むことができます このページ
Phpで読み取ることができません。クライアント側(ブラウザ)でハッシュナビゲーションに使用しますが、ハッシュ変更を処理してサーバー側(php)に非同期リクエストを送信し、ページに結果を表示するJSコードを記述できます。