php代码中能否嵌套php代码?

php代码中能否嵌套php代码?
比如说:我要在表单提交的目的页面中的表单中显示提交的内容,代码:

<?php
echo "<input type='text' value='<?php if(empty($_POST['name'])) echo "demo" else echo $_POST['name'] ?>'>";
>

请问以上代码能否被执行?(初学者,问题可能有些白痴,请耐心回答,谢谢)

阅读 8.5k
5 个回答

不可以。有两种方法,一种是拼接。

<?php
$name = empty($_POST['name'])? "demo": $_POST['name'];
echo "<input type='text' value='$name'>";

还有一种方法是直接用标签。

<input type="text" value="<?= empty($_POST['name'])? 'demo': $_POST['name'] ?>">

推荐用后面这种。

在php中 可以直接写html代码
可以写成
<input type='text' value='<?php if(1) echo "demo"; else echo 1; ?>'>

注意:
1 文件必须是.php后缀结尾
2 echo完了之后必须有分号结尾
3 有一种比较老的写法 <?=$test?>等同于 <?php echo $test?>但是注意必须开启短标签(在php.ini中设置 short_open_tag=on)

不可以,PHP需要?>来终止后表示一个脚本的结束,你这样会报错的

你这样写不对。
应该这样:<input type="text" value="<?php if(empty($_POST['name'])) echo 'demo'; else echo $_POST['name']; ?>">

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题