For循环中的PHP If语句
由于For循环中的PHP If语句,php,loops,Php,Loops,由于IF,以下代码给出了语法错误。如何在不删除IF语句的情况下修复此问题 <?php for ($i = 1; $i < 6; $i++){ $data .= 'h'.$i.'{'. if ( !empty ($size) ) {. 'font-size: ' .$size. ';'. }. '}'; } ?> ($i=1;$i $$数据/代码>开
IF
,以下代码给出了语法错误。如何在不删除IF语句的情况下修复此问题
<?php
for ($i = 1; $i < 6; $i++){
$data .= 'h'.$i.'{'.
if ( !empty ($size) ) {.
'font-size: ' .$size. ';'.
}.
'}';
}
?>
($i=1;$i<6;$i++)的{
$data.=“h$i{”。(!empty($size)?“font size:$size;”:“).“}”;
}
如果在字符串连接中使用,则不能使用,但可以使用短码:
for ($i = 1; $i < 6; $i++){
$data .= 'h'.$i.'{'.(!empty($size) ? ('font-size: ' .$size. ';') : '').'}';
}
for($i=1;$i<6;$i++){
$data.='h'.$i.{.(!empty($size)?('font-size:'.$size..;'):'.'.''.}';
}
表达式中不能使用if
语句,因为它在语法上是错误的,并且语句本身不返回值。使用三元?:
运算符,可以嵌套在其中:
$data .= 'h' . $i . '{' . (!empty($size) ? "font-size: $size" : '') . '}';
使用双引号插入变量,而不是使用
操作符弄乱变量,也会使您受益匪浅
for ($i = 1; $i < 6; $i++){
$data .= 'h'.$i.'{'.((!empty ($size))?'font-size: {$size}':'').'}';
}
与以下内容相同:
if ($test == "Y"){
$x="Yes!";
} else {
$x="No!";
}
如果是串联的,则不能串入完整的if,因此以下任一项都应解决此问题:
for ($i = 1; $i < 6; $i++)
{//ternary
$data .= 'h'.$i.'{'.( !empty ($size) ? 'font-size: ' .$size. ';' : '').'}';
}
我认为应该没有错误:
<?php
for ($i = 1; $i < 6; $i++){
$data .= 'h'.$i.'{' ;
if ( !empty ($size) ) {
$data .= 'font-size: ' .$size. ';';
}
$data .='}';
}
?>
< /代码> 您正处于从“代码> $$数据/代码>开始的行中添加字符串的情况。
两种解决方案:
1) 停止添加内容,启动if,在其中添加更多内容,停止if,然后在新语句中添加其余内容
$data .= 'h'.$i.'{';
if ( !empty ($size) ) {.
$data .= 'font-size: ' .$size. ';'.
}.
$data .= '}';
使用三元运算符
$data.='h'$i.{'(!empty($size)?'font-size:'.$size.;':'.'.'}'代码>
三元运算符将第一个参数求值为true或false,并返回第二个或第三个参数,就像函数调用一样
注意:过多地使用三元运算符会使代码不可读,尤其是在彼此内部使用时。为了更好的可读性,您可以始终使用类似于上面的单独IF构造来替换它。另外,三元运算符除了返回两个值中的一个外,无法轻松扩展以执行更多操作。}
应该在if语句之外您的else
语句没有任何意义。我添加了这一点以澄清三元运算符:?[如果为true]:[else]
,当完整编写时,您不会包含else,但?:
始终需要右侧(else)语句,因此完整转录三元结构会让您看到一条毫无意义的else
语句,是的,但它是there@Yaroslav:我修正了打字错误。谢谢现在它真的起作用了。我会在我的回答中评论。
for ($i = 1; $i < 6; $i++)
{//ternary
$data .= 'h'.$i.'{'.( !empty ($size) ? 'font-size: ' .$size. ';' : '').'}';
}
for ($i = 1; $i < 6; $i++)
{
$data .= 'h'.$i.'{';
if (!empty ($size))
{
$data .= 'font-size: ' .$size. ';';
}
$data .= '}';
}
for ($i = 1; $i < 6; $i++)
{
$data .= 'h'.$i.'{';
if (!empty ($size))
{
$data .= 'font-size: ' .$size. ';';
}
else
{
$data .= '';
}
$data .= '}';
}
<?php
for ($i = 1; $i < 6; $i++){
$data .= 'h'.$i.'{' ;
if ( !empty ($size) ) {
$data .= 'font-size: ' .$size. ';';
}
$data .='}';
}
?>
$data .= 'h'.$i.'{';
if ( !empty ($size) ) {.
$data .= 'font-size: ' .$size. ';'.
}.
$data .= '}';