Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
理解PHP中的foreach循环_Php_Wordpress_Loops - Fatal编程技术网

理解PHP中的foreach循环

理解PHP中的foreach循环,php,wordpress,loops,Php,Wordpress,Loops,我有两个foreach循环,我正在使用WordPress生成的对象 在我看来,这两者应该是一样的。然而,他们没有。注意循环中的$post和$not_a_post: A: B: 唯一的区别是我使用变量$post作为条件第一循环 我一直认为(显然是错误的)第二个条件变量只是一个占位符。所以我可以做x美元,y美元,等等 有人能给我解释一下为什么这个foreach循环需要变量$post?这是因为title()依赖一个来自外部作用域的名为$post的变量,顺便说一句,这是一个糟糕的设计思想-它应该作为参数

我有两个
foreach
循环,我正在使用WordPress生成的对象

在我看来,这两者应该是一样的。然而,他们没有。注意循环中的
$post
$not_a_post

A:

B:

唯一的区别是我使用变量
$post
作为条件第一循环

我一直认为(显然是错误的)第二个条件变量只是一个占位符。所以我可以做x美元,y美元,等等


有人能给我解释一下为什么这个foreach循环需要变量
$post

这是因为
title()
依赖一个来自外部作用域的名为
$post
的变量,顺便说一句,这是一个糟糕的设计思想-它应该作为参数传递给函数,例如:

the_title($some_id || $some_resource);

编辑:实际上,WP允许您传递帖子id。

这是因为
标题()
依赖一个来自外部作用域的名为
$post
的变量,顺便说一句,这是一个糟糕的设计思想-它应该作为参数传递给函数,例如:

the_title($some_id || $some_resource);

编辑:实际上WP允许你传递帖子id。

你能解释一下预期的结果是什么以及你得到了什么吗。。。?这似乎与PHP没有什么关系,而是与Wordpress的特性有关。请按照@deceze所说的去做,并发布更多信息,但同时。在纯PHP术语中,两者之间的区别(根据您的要求)是第一个
foreach
循环中有变量
$post
,第二个循环中有
$not_a_post
。谁知道
get\u posts
做了什么,或者
title()
需要什么,因为你没有给我们看那段代码。你能解释一下预期的结果是什么以及你得到了什么吗。。。?这似乎与PHP没有什么关系,而是与Wordpress的特性有关。请按照@deceze所说的去做,并发布更多信息,但同时。在纯PHP术语中,两者之间的区别(根据您的要求)是第一个
foreach
循环中有变量
$post
,第二个循环中有
$not_a_post
。谁知道
get\u posts
做了什么,或者
title()
需要什么,因为您没有向我们显示该代码。谢谢,所以在WordPress之外不会出现这种情况。你能详细说明函数的参数吗?谢谢你提到wordpress的全局变量mess。。。说得再清楚不过了。关于这一点,我是否可以对当前循环进行任何更改,或者这是一个我无法避免的怪癖?@tmyie您可以调用
获取标题($not\u a\u post)
。或者你可以使用一个编码巧妙的软件:)@Thomas该语句可以缩写为“不要使用Wordpress”。)谢谢,所以在WordPress之外不会出现这种情况。你能详细说明函数的参数吗?谢谢你提到wordpress的全局变量mess。。。说得再清楚不过了。关于这一点,我是否可以对当前循环进行任何更改,或者这是一个我无法避免的怪癖?@tmyie您可以调用
获取标题($not\u a\u post)
。或者你可以使用一个编码巧妙的软件:)@Thomas该语句可以缩写为“不要使用Wordpress”。)
the_title($some_id || $some_resource);