如果数组返回至少一个值,PHP只回显一次变量
好的,我有一个从如果数组返回至少一个值,PHP只回显一次变量,php,Php,好的,我有一个从数组中的数据库返回的值,一些页面有3个值,一些页面有10个值,另一些页面有0个值 如果页面返回一个值,我希望标签出现一次,因此不在循环中。 label->$key_label='key references:' 如果页面没有任何$reference\u keys我不希望标签出现,因此$key\u label=false 因此,我想检查数组中的值,如果>=1:标签也会出现 我的代码似乎没有验证if(array($value=>1)和&!$key\u label)我猜我的语法错了,或
数组中的数据库返回的值,一些页面有3个值,一些页面有10个值,另一些页面有0个值
如果页面返回一个值,我希望标签出现一次,因此不在循环中。
label->$key_label='key references:'代码>
如果页面没有任何$reference\u keys
我不希望标签出现,因此$key\u label=false代码>
因此,我想检查数组中的值,如果>=1:标签也会出现
我的代码似乎没有验证if(array($value=>1)和&!$key\u label)
我猜我的语法错了,或者我应该使用不同的函数
谢谢你的帮助
$key_label = false;
$key_label = '<span class="hl_reference"><u>key references:</u></span>';
foreach($reference_keys as $value)
{
echo $value .' ';
}
if(array($value => 1) && !$key_label)
{
$key_label = true;
echo $key_label;
};
-------------------------------更新-----------------------------
John C的最新代码似乎有效,但它在每页的第二个$reference\u键之前显示一个“1”。但它只显示在带有$reference\u键的页面上
$key_flag = false;
$key_label = '<span class="hl_reference"><u>key references:</u></span>';
foreach($reference_keys as $value)
{
if (!empty($value)) {
if (!$key_flag) {
echo $key_label;
$key_label = true;
}
echo $value .' ';
}
};
$key\u flag=false;
$key_label='key references:';
foreach($reference_key as$value)
{
如果(!空($value)){
如果(!$key_标志){
echo$key_标签;
$key_label=true;
}
回显$value.';
}
};
-------------------------------更新-----------------------------
约翰·C解决了这个问题。。工作代码如下!谢谢大家!->
$key_flag = false;
$key_label = '<span class="hl_reference"><u>key references:</u></span>';
foreach($reference_keys as $value)
{
if (!empty($value)) {
if (!$key_flag) {
echo $key_label;
**$key_flag = true;**
}
echo $value .' ';
}
};
$key\u flag=false;
$key_label='key references:';
foreach($reference_key as$value)
{
如果(!空($value)){
如果(!$key_标志){
echo$key_标签;
**$key_flag=true**
}
回显$value.';
}
};
该功能应能帮助您:
if(count($value) >= 1 && !$key_label)
您的代码似乎有一些逻辑问题,首先您正在覆盖$key\u标签
内容,然后您在代码中使用的变量似乎不是数组。请尝试以下代码:
$key_flag = false;
$key_label = '<span class="hl_reference"><u>key references:</u></span>';
foreach( $reference_keys as $value )
{
echo $value .' ';
}
if( count( $reference_keys ) >= 1 && ! $key_label )
{
$key_flag = true;
echo $key_label;
};
$key\u flag=false;
$key_label='key references:';
foreach($reference_key as$value)
{
回显$value.';
}
如果(计数($reference_key)>=1&!$key_标签)
{
$key_flag=true;
echo$key_标签;
};
或者,您可以使用以下更好的解决方案:
if( is_array($reference_keys) && count($reference_keys) > 0 )
{
echo '<span class="hl_reference"><u>key references:</u></span>';
foreach( $reference_keys as $value )
echo $value .' ';
}
if(is_数组($reference_键)&&count($reference_键)>0)
{
回应“关键参考文献:”;
foreach($reference_key as$value)
回显$value.';
}
编辑1
if( is_array($reference_keys) && count($reference_keys) > 0 )
{
echo '<span class="hl_reference"><u>key references:</u></span>';
foreach($reference_keys as $value)
echo $value .' ';
}
if(is_数组($reference_键)&&count($reference_键)>0)
{
回应“关键参考文献:”;
foreach($reference_key as$value)
回显$value.';
}
如果我读对了,您希望显示span
如果$reference\u key
数组中有值,然后循环显示数组中的值
为此,您可以执行以下操作:
if(!empty($reference\u keys)&&count($reference\u keys)>0){
回应“关键参考文献:”;
foreach($reference_key as$value)
{
回显$value.';
}
}
编辑如果$reference\u keys
数组中有空值,则计数将返回大于0,但不会显示任何键。如果是这种情况,此代码将解决:
$key_flag = false;
$key_label = '<span class="hl_reference"><u>key references:</u></span>';
foreach($reference_keys as $value)
{
if (!empty($value)) {
if (!$key_flag) {
echo $key_label;
$key_flag = true;
}
echo $value .' ';
}
}
$key\u flag=false;
$key_label='key references:';
foreach($reference_key as$value)
{
如果(!空($value)){
如果(!$key_标志){
echo$key_标签;
$key_flag=true;
}
回显$value.';
}
}
嘿,火箭,我累了如果(count($value>=1)
它不起作用了…PHP手册让我很困惑…你似乎在用$key\u标签做两件事。你能告诉我们数组是什么样子吗?我假设$reference\u keys就是有问题的数组吗?1.你的语法是(几乎是)恶心。$key\u标签没有正确的值。2.你能给我们看一下你的数组吗?我的array
是从数据库返回的$reference\u keys=array();
@JohnC是的,你的假设是正确的$value=array(0=>'data1',1=>'data2');
这再清楚不过了;)晚安,谢谢,但那没有做到。。结果与我以前的代码相同。马上查看我的更新帖子…Marcio,第二个代码总是显示标签->即使在没有键的页面上。。没有bueno..当我将>1
更改为>=1
时,它会显示在所有页面上-包括那些没有ref键的页面…@FabioAnselmo,我认为您的变量存在一些问题。什么类型的数组$reference\u keys
接收?TEXT
从MYSQL
数据库表键入此代码始终显示标签->即使在没有键的页面上也是如此(@FabioAnselmo-更改为与新代码匹配,使用fix以便您检查count()
用于$reference\u key
变量。对于带有1个ref\u key链接的页面不显示。另外,span
需要在$value
@FabioAnselmo之前显示-好吧,可能数组中有空值,新代码可以解决发布的问题。嘿@John C你上一个代码在那里几乎可以工作98%p、 在显示第二个链接之前,它会抛出一个“1”。。。
$key_flag = false;
$key_label = '<span class="hl_reference"><u>key references:</u></span>';
foreach($reference_keys as $value)
{
if (!empty($value)) {
if (!$key_flag) {
echo $key_label;
$key_flag = true;
}
echo $value .' ';
}
}