web-dev-qa-db-ja.com

いつ$ postの代わりに$ _postを使用しますか?

$ postの代わりに$ _postを使用する例を見てきました。違いは何ですか?また、いつ$ postの代わりに$ _postを使用しますか?

例:

if (have_posts()) :
while (have_posts()) : the_post();
if(!in_category("some-category", $_post )) { do_something(); }
1
Scott B

確かではありませんが、次のように$ _postについて話している場合:

http://codex.wordpress.org/Function_Reference/in_category

投稿IDを参照しているので、混乱を避けるためにアンダースコアを追加している可能性があります。 $ post変数は、投稿のすべての詳細を含む投稿オブジェクトです。

ただし、$ _ POSTは、フォームから送信されたすべての値を含むグローバルPHP変数です。

http://php.net/manual/en/reserved.variables.post.php

9
Pabline

Q:いつ$ postの代わりに$ _postを使用しますか?

私はそれが適用できると思うたびに、あなたの例のために私は知らない。

Q:違いは何ですか?また、いつ$ postの代わりに$ _postを使用しますか?

違いは、異なる変数を使用していることです。

異なる変数

これは多かれ少なかれコーディングの質問ですが、WordPressのコンテキストで答えられるようにできる限り役立つようにしています。

$_postは単なる変数であり、$は変数であることを示し、_postは変数の名前です。 名前は大文字と小文字が区別されます btw。ですので、$_post$_Postまたは$_POSTはすべて異なる変数です。 $postも同様です。

変数の内容を知りたい場合、つまり変数の詳細を知りたい場合は、 var_dump()functionvar_dump($_post);を使用できます。

これは、あなたが提供したコードでは$_post変数が何を表しているのかがわからないため、さらに調べるのに役立ちます。

変数には任意の値を含めることができるため(設定されていない場合も含む)、変数を設定しているコードの部分を見つける必要があります。

ループ内の$postの特別な意味

変数$postは、 the_loop のコンテキストで特別な意味を持ちます:ループ内の現在の投稿への参照を含みます。

3
hakre