我想知道是否有更短的方式来编写以下代码:
<input type="text" name="username" value="<?if(isset($_POST['username'])){ echo $_POST['username']; }?>" />
我讨厌必须这样做,因为isset()检查所有形式都会弄乱我的HTML并吓跑前面的人。
答案 0 :(得分:5)
你可以帮帮忙:
function req($key, $default = '')
{
return isset($_REQUEST[$key]) ? $_REQUEST[$key] : $default;
}
<input name="user" value="<?php echo htmlentities(req('user')) ?>" />
@marvin's建议对你的剧本也很好
关于前端人员,我会说给他们一些基本的php使用,就像在这个php for designer tutorial:http://www.digital-web.com/articles/php_for_designers/
学习基本的写法我认为比使用外部模板系统更好
答案 1 :(得分:3)
您可以在php部分中分配值,然后只在html中回显
$username = isset($_POST['username'])?$_POST['username']:'';
<input type="text" name="username" value="<?php echo $username;?>" />
答案 2 :(得分:1)
为什么不
<input type="text" name="username" value="<? echo $_POST['username']; ?>" />
如果$ _POST ['username']为空,那么它将导致值为“”。
我觉得我错过了什么。