ホームページ >バックエンド開発 >PHPチュートリアル >PHP フレームワーク - $_GET[] 変数ではなく、URL 内の変数を PHP が取得すると思いますか?

PHP フレームワーク - $_GET[] 変数ではなく、URL 内の変数を PHP が取得すると思いますか?

WBOY
WBOYオリジナル
2016-12-01 00:57:011203ブラウズ

「URL_PARAMS_BIND_TYPE」=>1 をオンにすると、//パラメーター受け渡しモードによりパラメーターの順次受け渡しが可能になります。つまり、URL は変数名を書き込みません

訪問

http://localhost/yb1/Home/Get...

なぜ何もないのですか?

thinkPHP で $_GET[""] に値を割り当てる方法?

リーリー

返信内容:

「URL_PARAMS_BIND_TYPE」=>1 をオンにすると、//パラメーター受け渡しモードによりパラメーターの順次受け渡しが可能になります。つまり、URL は変数名を書き込みません

訪問

http://localhost/yb1/Home/Get...

なぜ何もないのですか?

thinkPHP で $_GET[""] に値を割り当てる方法?

リーリー

現時点では、これらの魔法の問題を説明するコードを記述する必要があります。
211 行目から見てください。 リーリー ThinkPHPLibraryThinkDispatcher.class.phpコードは最初に URL 内のパス情報を切り取ります。つまり、配列をマージします。したがって、$_GET 配列には値のみが存在しますが、ホストのメインキーは存在しません。これは、TP がそれを認識していないためです。バインドしたいキーはどれですか。

Getpost/test/2/xxx这一部分,而其中在前面的获取控制器阶段,会把Getpost/test进行移除,最后到了URL参数绑定的过程中,就会直接将paths数据赋值给var,然后在于$_GETバインド方法については、引き続きコードを見てください:

下に見てください (
136 行目から):

リーリー
上記はパラメータをバインドするためのコードです。ThinkPHPLibraryThinkApp.class.phpがtrueの場合、パスパラメータを関数のパラメータに順番にポップアップし、invokeArgsを使用して値を割り当てます。

直接できないんですかURL_PARAMS_BIND_TYPE リーリー

dump($_REQUEST); 値の前に /id/23 の形式でパラメータ名が必要です

例: http://192.168.45.3:8125/home...

リーリー

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。