Php 如果$var为空,则不工作?

Php 如果$var为空,则不工作?,php,Php,我运行以下代码: <? $map = do_shortcode('[codepeople-post-map]'); if (empty($map)) {echo '<br />'; } else {echo $map;} ?> 但到目前为止还没有成功,最后的代码是错误的,只是给出了错误。 变量是一个带空格的字符串,其计算结果为TRUE,因此它不是空的 不要使用empty(),您可以检查trim($map)==''这意味着您有一个带空格的字符串。 可能var以

我运行以下代码:

<?

$map = do_shortcode('[codepeople-post-map]');    
if (empty($map)) {echo '<br />'; } else {echo $map;}

?>
但到目前为止还没有成功,最后的代码是错误的,只是给出了错误。

变量是一个带空格的字符串,其计算结果为
TRUE
,因此它不是空的


不要使用
empty()
,您可以检查
trim($map)==''

这意味着您有一个带空格的字符串。 可能var以前是一个空错的字符串。根据应用程序的用途,我可以向您推荐一种解决方案

 if(trim($map) == "" || $map == null)
 {
      echo "<br />";
 }
 else
 {
      echo $map;
 }
if(修剪($map)==“| |$map==null)
{
回声“
”; } 其他的 { echo$地图; }
因为实际上它只意味着字符串包含空格(这解释了为什么在“”中有空格)。您应该尝试定位$map值的位置,并尝试在那里进行一些验证


Alex

或trim($map)=''使用
isset
而不是
empty
如何?@JunM:如果$map包含空格,则使用
isset
执行echo

。但另一方面,如果$map包含我的map值,它就不会回显。@Vikas:
为空
给我的结果与
为空
@Cyborg,
$map
从何而来?@JunM:
$map=do_shortcode(“[codepeople post map]”)使用WordPress插件GoogleMap我尝试了这段代码,但在页面上没有任何区别。它显示映射是否在那里,否则它仍然不执行

我可能建议您查看并向我们显示do_shortcode()的返回类型。如果你能发现我们可以更进一步
 if(trim($map) == "" || $map == null)
 {
      echo "<br />";
 }
 else
 {
      echo $map;
 }