HTML属性中的PHP if语句

HTML属性中的PHP if语句,php,html,if-statement,Php,Html,If Statement,我在想些什么。我在看其他离开的学员的代码,所以我什么都不能问。我看到以下情况: <input type="text" name="name" class="form-control" placeholder="name" value="<?php if (isset($something)): echo 'bla'; else: if(!empty($somethingelse)): echo 'bla2'; endif;" > 如果我自己

我在想些什么。我在看其他离开的学员的代码,所以我什么都不能问。我看到以下情况:

<input type="text" 
name="name" 
class="form-control" 
placeholder="name" 
value="<?php if (isset($something)): echo 'bla'; 
             else: if(!empty($somethingelse)): echo 'bla2'; endif;"
>
如果我自己这么说的话,这看起来确实很难看。我在想:这真的是一个好的/好的方法,还是真的像我想的那么糟糕?

试试这个

  <input type="text" 
    name="name" 
    class="form-control" 
    placeholder="name" 
    value="<?php echo isset($something) ? 'bla' : (!empty($somethingelse) ? 'bla2' : ''); ?>" >

我总是喜欢将php和html分开。我的建议如下:

<?php
    $value = isset($something)
        ? 'bla'
        : 'bla2'
    ;
?>
试试这个-

<?php 
    if (isset($something)){
        $value = 'bla'; 
    }
    else if(!empty($somethingelse)){
       $value = 'bla2';
    }
?>

<input type="text" name="name" class="form-control" placeholder="name" 
value="<?php echo $value ?>" >
首先,我根据条件设置$value中的值,然后在value属性中回显该值


代码转储不能得到好的答案。您应该解释这是如何以及为什么解决他们的问题的。我推荐阅读,而且,我没有要求更换;我只是想知道我的代码有多糟糕。即使你的例子仍然困扰着我,我喜欢使用变量;我花了大约2天的时间来清理代码,并希望尽可能多地清理它。你做什么我也想到了,只是好奇我展示的代码到底有多糟糕。每次你为自己写代码时,你自己都很清楚。在某些情况下,为他人编写代码是非常重要的。这是我唯一知道的强迫自己写干净代码的方法。检查我的编辑。在PHP世界中,有一些库和框架可以帮助您清理代码。我建议你们学习所有关于MVC模式的知识。显然,我希望你们喜欢我的建议,接受我的建议作为正确的回应。^是的,我知道MVC。我们曾经感谢那些制作这个代码点火器的家伙,我已经有点不喜欢了。没有人花时间将Twig实现到it中,项目中一个真正优秀的开发人员现在正在实现它,但直到周五才出现,并且没有提交他的东西。但是,是的,你提出的建议很好。我很喜欢看到你们拿出一根小树枝。若条件允许,你们不会同时关闭这两个小树枝,而是会有一个结束;缺乏。您还需要退出PHP?>之后,这也会产生语法错误。除了下面的答案之外,还可以看看PHP提供的短标记功能:@Qirel Oops,忘了添加它,这是一个概念,但重要的是。
<input type="text" 
    name="field_name" 
    class="form-control" 
    placeholder="field name" 
    value="{{ field_name }}">
$value = isset($something)
    ? 'bla'
    : 'bla2'
;

$this->render('path/to/template.html.twig', [
    'field_name' => $value,
]);
<?php 
    if (isset($something)){
        $value = 'bla'; 
    }
    else if(!empty($somethingelse)){
       $value = 'bla2';
    }
?>

<input type="text" name="name" class="form-control" placeholder="name" 
value="<?php echo $value ?>" >