ホームページ >バックエンド開発 >PHPチュートリアル >PHP クエリ文字列のヒント Sharing_PHP チュートリアル
経験豊富な
RL プログラマーにとって、変数を渡すことはすでに一般的なことであり、多くの人がこの記事は何も目新しいものではないと考えるでしょう。 URL を通じて変数を渡す方法を GET メソッドと呼び、もう 1 つの方法を POST メソッドと呼びます。どちらのメソッドも PHP で実装するのは非常に簡単です。たとえば、データベース クエリを実行する準備をしていて、GET で city、id、paid の 3 つの変数を渡す必要があるとします。従来の PHP クエリ文字列の方法では、次の例のようなクエリ文字列を構築します。
<ol class="dp-xml"> <li class="alt"><span><span>$</span><span class="attribute">city_name</span><span> = </span><span class="attribute-value">"new york"</span><span>; </span></span></li> <li> <span>$</span><span class="attribute">invoice_id</span><span> = </span><span class="attribute-value">3456</span><span>; </span> </li> <li class="alt"> <span>$</span><span class="attribute">paid</span><span> = </span><span class="attribute-value">1</span><span>; </span> </li> <li> <span>$</span><span class="attribute">fields</span><span> = </span><span class="attribute-value">array</span><span>('city' =</span><span class="tag">></span><span> <br>$city_name, </span> </li> <li class="alt"> <span>'id' =</span><span class="tag">></span><span> $invoice_id, </span> </li> <li> <span>'paid' =</span><span class="tag">></span><span> $paid); </span> </li> <li class="alt"> <span>$</span><span class="attribute">url</span><span> = </span><span class="attribute-value">"http://www.example.com?"</span><span> .<br> http_build_query($fields, '', "&"); </span> </li> </ol>上記の PHP クエリ文字列の例では、配列には変数名と変数値が含まれています。変数値のみを含む配列を渡すこともできます。その場合、関数は、指定した変数名 (関数の 2 番目のパラメーターを通じて渡される) と配列のインデックス値を使用して変数名を構築します。たとえば、6 つの都市名を渡したい場合は、次のように実行できます。
<ol class="dp-xml"> <li class="alt"><span><span>$</span><span class="attribute">fields</span><span> = </span><span class="attribute-value">array</span><span>('paris', </span></span></li> <li><span>'new york', </span></li> <li class="alt"><span>'florence', </span></li> <li><span>'london', </span></li> <li class="alt"><span>'berlin', </span></li> <li><span>'delhi'); </span></li> <li class="alt"> <span>$</span><span class="attribute">url</span><span> = </span><span class="attribute-value">"http:/<br>/www.example.php?"</span><span> . </span> </li> <li><span>http_build_query($fields,<br> 'city', "&"); </span></li> </ol>
http://www.example.php/?city0=paris&city1=new+york&city2=florence&city3=london&city4=berlin&city5=delhi
(注釈:配列要素がデフォルトではない場合、キーは対応する値の変数名として使用されます。上記の例のように、配列のキーがデフォルトの整数である場合、変数名はその 2 番目のパラメーターになります。関数に要素のキーを加えたものであるため、最初の変数名は city0) になります。
PHP クエリ文字列関数の 3 番目のパラメーターは、変数の区切り文字を表すオプションのパラメーターです。デフォルト値は '&' です。ただし、私は「&」区切り文字を明示的に渡すことを好みます。
複雑な配列を渡すこともできます:
<ol class="dp-xml"> <li class="alt"><span><span>$</span><span class="attribute">city_name</span><span> = </span><span class="attribute-value">"new york"</span><span>; </span></span></li> <li> <span>$</span><span class="attribute">invoice_id</span><span> = </span><span class="attribute-value">3456</span><span>; </span> </li> <li class="alt"> <span>$</span><span class="attribute">currency_name</span><span> = </span><span class="attribute-value">"euro"</span><span>; </span> </li> <li> <span>$</span><span class="attribute">total</span><span> = </span><span class="attribute-value">345</span><span>; </span> </li> <li class="alt"> <span>$</span><span class="attribute">receipt_no</span><span> = </span><span class="attribute-value">"fgf44545"</span><span>; </span> </li> <li><span> </span></li> <li class="alt"> <span>$</span><span class="attribute">fields</span><span> = </span><span class="attribute-value">array</span><span>('city' =</span><span class="tag">></span><span> <br>$city_name, </span> </li> <li> <span>'id' =</span><span class="tag">></span><span> $invoice_id, </span> </li> <li class="alt"> <span>'paid' =</span><span class="tag">></span><span> array('currency' =</span><span class="tag">><br></span><span> $currency_name, </span> </li> <li> <span>'amount' =</span><span class="tag">></span><span> $total, </span> </li> <li class="alt"> <span>'receipt' =</span><span class="tag">></span><span> $receipt_no) </span> </li> <li><span>); </span></li> <li class="alt"> <span>$</span><span class="attribute">url</span><span> = </span><span class="attribute-value">"http://www.example.php?"</span><span> . </span> </li> <li><span>http_build_query($fields, '', "&"); </span></li> </ol>
次の URL が生成されます:
http://www.example.com?city=new+york&id=3456&paid%5Bcurrency%5D=euro&paid %5Bamount%5D=345&paid%5Breceipt%
5D=fgf44545
つまり、 http_build_query() は確かに GET 用の PHP クエリ文字列の構築を簡素化できます。
http://www.bkjia.com/PHPjc/445934.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/445934.html
技術記事
変数を渡すことは、RL の経験があるプログラマにとっては一般的なことなので、多くの人はこの記事は何も新しいことではないと思うでしょう。 URL 経由で変数を渡すメソッドを呼び出します...