我最近问了这个问题,但是我没有得到直接答案,而是通过用变量代替我的html中的if语句来展示如何使用三元运算符来简化我的代码,我赞赏并投入使用 - 但是这也导致其他代码难以阅读,最终没有教会我在类似下面的代码中正确地转义/解析php。
所以我想要一个简单的“显示并告诉”如何解析以下代码,谢谢:
<?php
if (!isset($_POST['myform'])) {
echo
<form method="POST" action="<?php if (isset($myform_worked)) { echo 'somepath'; } ?>" accept-charset="UTF-8">
这是我尝试过的,但上面的行不解析:
<?php
if (!isset($_POST['myform'])) {
echo
'<form method="POST" action="'<?php if (isset($myform_worked)) { echo 'somepath'; } ?>'" accept-charset="UTF-8">'
我也尝试过(在php内部使用双引号:
"<?php if (isset($myform_worked)) { echo 'somepath'; } ?>"
请显示这个小节如何做到这一点,谢谢。我不在乎上面的代码是不是很糟糕...我只需要学习如何在PHP里面的html中转义/解析php,谢谢。
答案 0 :(得分:1)
在进入HTML模式之前忘了关闭PHP标记。
答案 1 :(得分:1)
你没有事先关闭打开的php-block。工作语法是这样的:
<?php
//php code
?>
<!--HTML-Code-->
<?php
?>
或根据您的问题:
<?php
if (!isset($_POST['myform'])) {
?>
<form method="POST" action="<?php if (isset($myform_worked)) { echo 'somepath'; } ?>" accept-charset="UTF-8">
<?php } //if-closing bracket ?>
答案 2 :(得分:0)
你可以试试这个,在php里面。在php页面中,在html标签内添加php代码看起来像<?php //your php code here ?>
。
<?php
if (!isset($_POST['myform'])) {
echo '<form method="POST" action="'.isset($myform_worked)?'somepath':''.'" accept-charset="UTF-8">';
}
?>
HTML + PHP
<?php if (!isset($_POST['myform'])) { ?>
<form method="POST" action="<?php if (isset($myform_worked)) { echo 'somepath'; } ?>" accept-charset="UTF-8">
<?php } ?>
答案 3 :(得分:-2)
<?php echo "hello world";?>
或简写
<?="hello world"?>