ホームページ > バックエンド開発 > PHPチュートリアル > 【フレームワークマニア】アドレスバーパラメータを簡単に取得するには?

【フレームワークマニア】アドレスバーパラメータを簡単に取得するには?

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-13 13:48:54
オリジナル
837 人が閲覧しました

アドレス バーのパラメータを簡単に取得する方法を [フレームワーク愛好家] に尋ねてください。

PHP コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
<?php
//url 格式 [1]
    $txt="http://www.xxx.com/index.php/param1/test1/param2/test2/param3/test3";
    
//url 格式 [1-2]
//    $txt="http://www.xxx.com/file/index.php/param1/test1/param2/test2/param3/test3";    
//url 格式 [2]
//$txt="http://www.xxx.com/index.php/param1-test1-param2-test2-param3-test3";
    $pattern="/(?<!\/)\/(?!\/)/";
    $chars = preg_split($pattern, $txt, -1, PREG_SPLIT_NO_EMPTY);
  $chars=array_slice($chars,2);
  echo "<pre class="brush:php;toolbar:false">";
    var_dump($chars);
?>

ログイン後にコピー


これらの URL 記述メソッドに遭遇した場合、どのようにして取得しますか?



------解決策----------------------
何を言っているのかわかりません
http:/ のような形式/www.xxx.com/index.php/param1/test1/param2/test2/param3/test3 は $_SERVER['PATH_INFO'] に param1/test1/param2/test2/param3/test3 の形式で保存されます

変換も簡単
PHPコード
$s = 'param1/test1/param2/test2/param3/test3';
$t = preg_replace('#([^/]+)/([^/]+)/?#', '&$1=$2', $s);
parse_str($t, $ar);
print_r($ar);
<br><font color="#e78608">------解決策---------</font><br>CI を使用していますか?<br> <br> $this->uri->segment(n)<br>詳細な URI セグメントを再セグメント化できます。 n は取得するセグメントの数です。分割数は左から右に並んでいます。
<br><font color="#e78608">------解決策---------</font><br>元の投稿者はフレームワークの開発に取り組んでいます。私は直接explode('/', $url);
<br><font color="#e78608">------解決策---------</font><br>$this->uri->segment ( n)<br><br>CI はこのメソッドです<br><br>ci は次のように処理されます: <br>explode("/", preg_replace("|/*(.+?)/*$|" , "\1", $this->uri_string))<br><br><br> ただし、explode メソッドを使用します。 <div class="clear"></div>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート