理解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);