Php 变量存在,但if语句否认其存在
我在voces\u allvoces.tpl.php中有一个语句Php 变量存在,但if语句否认其存在,php,if-statement,joomla1.5,virtuemart,Php,If Statement,Joomla1.5,Virtuemart,我在voces\u allvoces.tpl.php中有一个语句if(isset($voces)) 如果我在该语句之前检查同一行上的值,它会告诉我该值为2,但由于某种原因,If语句拒绝承认这一点 如果($voces>0)不起作用,也尝试了。我在两个页面上使用它,在另一个页面上它工作得很好,尽管这个页面上没有任何与此冲突的内容(删除了页面上的所有内容,但仍然不工作) 使用Joomla 1.5.21和Virtuemart 1.1.6 代码如下: <div class="rating" styl
if(isset($voces))
如果我在该语句之前检查同一行上的值,它会告诉我该值为2,但由于某种原因,If语句拒绝承认这一点
如果($voces>0)不起作用,也尝试了。我在两个页面上使用它,在另一个页面上它工作得很好,尽管这个页面上没有任何与此冲突的内容(删除了页面上的所有内容,但仍然不工作)
使用Joomla 1.5.21和Virtuemart 1.1.6
代码如下:
<div class="rating" style="margin: 0px 0px 15px -9px">
<?php
$product_flypage = $_SERVER['REQUEST_URI'];
echo ps_reviews::allvotes( $product_flypage );
?>
vows\u allvows.tpl.php(实际问题是):
if(isset($voces)){?>
image/stars/.gif“align=“middle”border=“0”alt=“stars”/
isset可能没有返回您期望的内容
$votes = 0;
if(isset($votes)){
echo 'Ooer missus ...';
}
我不确定,但也许你想
if((int)$votes > 0){
echo 'well you got at least one vote ...';
}
无论如何,如果一个条件没有像你期望的那样,那么
var_dump()
将该变量添加到页面或日志文件中,并对其进行检查
更好的是,在编写条件测试之前检查它。您能否澄清您的问题出在哪里,因为我发现有点难以理解您的问题的要点$tpl->fetch实际上做了什么?我认为,您需要阅读变量范围
以及,如果(且仅当)global
construct对它没有帮助。你的问题/代码组合的唯一意义是,如果你检查一个局部变量($vots)超出它的作用域(全局)。它在voces\u allvoces中的if语句中。$tpl->fetches-fetches-voces\u allvoces.tpl.phpOkay,如果我使用die(var\u dump($voces))该值是字符串2,如果我只使用var_dump($vots),则该值为NULL,我不知道发生了什么xD
$votes = 0;
if(isset($votes)){
echo 'Ooer missus ...';
}
if((int)$votes > 0){
echo 'well you got at least one vote ...';
}