2013-03-25 106 views
3
<?php 
    require('config.php'); 
    if(isset($_POST['submit'])){ 
    }else{ 
    $form =<<<EOT 
    <form action="reg.php" method="POST"> 
     First Name: <input type="text" name="name"/><br /> 
     Last Name: <input type="text" name="lname"/><br /> 
     Username: <input type="text" name="uname"/><br /> 
     Email: <input type="text" name="email1"/><br /> 
     Confirm Email: <input type="text" name="email2"/><br /> 
     Password: <input type="password" name="pass1"/><br /> 
     Confirm Password: <input type="password" name="pass2"/><br /> 
     <input type="submit" value="Register" name="submit"/> 
    </form> 
    EOT; 
    echo $form; 
    } 
?> 
+1

你能分享你的整个代码吗? – 2013-03-25 07:55:44

回答

2

当你开始和结束EOT的定义时,你不能有任何想法......看下面的代码。这不是很好(它把其他代码的意图搞砸了),但这是唯一的方法。

<?php 
    require('config.php'); 

    if(isset($_POST['submit'])){ 

    }else{ 
$form =<<<EOT 
    <form action="reg.php" method="POST"> 
    First Name: <input type="text" name="name"/><br /> 
    Last Name: <input type="text" name="lname"/><br /> 
    Username: <input type="text" name="uname"/><br /> 
    Email: <input type="text" name="email1"/><br /> 
    Confirm Email: <input type="text" name="email2"/><br /> 
    Password: <input type="password" name="pass1"/><br /> 
    Confirm Password: <input type="password" name="pass2"/><br /> 
    <input type="submit" value="Register" name="submit"/> 
    </form> 
EOT; 
    } 

    echo $form; 

?> 
6

您的“EOT”不能缩进,它必须在行的开头(可悲)。

+2

为什么“可悲”?我很容易理解这种行为。如果它背后有任何*任何东西,你怎么能确定作者想要结束这个字符串,而不仅仅是把它包括在内? – 2013-03-25 07:57:50

+0

请正确显示做好 – Ibu 2013-03-25 07:59:06

+1

@Madara的正确方法,因为您可以看到它打破缩进,有效地消除了正确结构化代码中的语法有用性(至少对我个人而言)。我非常喜欢允许结束字符串出现在字符串中任何位置的行为。 – 2013-03-25 08:04:26

相关问题