在PHP中以无序列表格式显示错误

在PHP中以无序列表格式显示错误,php,listitem,Php,Listitem,我想以无序列表格式显示$error中存储的所有错误。以下是显示错误的代码 <?php if (!empty($error)) { echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) occurred:</strong><br/>'. '<li>' . $error . '&l

我想以无序列表格式显示$error中存储的所有错误。以下是显示错误的代码

<?php
     if (!empty($error)) {
         echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) occurred:</strong><br/>'. '<li>' . $error . '</li>' . '</p>';
     } elseif (!empty($success)) {
         echo $success;
       }
?>

问题是,上面的代码只显示列表中的第一个错误,而其余的错误只显示在单独的一行中,没有列表格式。所有错误都以以下格式存储:

$error .= "You didn't type in your name. <br />";
$error.=“您没有输入姓名。
”;
我尝试删除br标签,但没有成功

任何帮助都将不胜感激。
提前感谢:)

您必须为每个错误使用
  • 如果使用

    标记,PHP的输出应该如下所示

    <ul>
        <li>Error1</li>
        <li>Error2</li>
        <li>Error3</li>
    </ul>
    
    $error .= "<li>You didn't type in your name. </li>";
    $error .= "<li>Error2. </li>";
    $error .= "<li>Error3 </li>";
    
    
    echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) occurred:</strong><br/>'. '<ul>' . $error . '</ul>' . '</p>';
    
    • 错误1
    • 错误2
    • 错误3
    所以有这样的PHP代码

    <ul>
        <li>Error1</li>
        <li>Error2</li>
        <li>Error3</li>
    </ul>
    
    $error .= "<li>You didn't type in your name. </li>";
    $error .= "<li>Error2. </li>";
    $error .= "<li>Error3 </li>";
    
    
    echo '<p class="error"><strong>Your message was NOT sent<br/> The following error(s) occurred:</strong><br/>'. '<ul>' . $error . '</ul>' . '</p>';
    
    $error.=“
  • 您没有键入您的姓名。
  • ”; $error.=“
  • error 2.
  • ”; $error.=“
  • 错误3
  • ”; echo'

    您的邮件未发送
    出现以下错误:

      ’$错误。”
    “.”

    ",;

    假设
    $error
    是一个数组(似乎如此)

    if(!empty($error)){
    foreach($e错误){
    printf(“
  • %s
  • \n”,$e); } } //或者只是 打印“
  • ”。join(“
  • \n
  • ”,$error)。“
  • ”; //额外:收集错误 如果(修剪($\u POST[“first\u name”])==“”){ $error[]=“您没有输入您的名字。”; } 如果(修剪($\u贴子[“姓氏])=“”){ $error[]=“您没有键入您的姓氏。”; } ...
    Yes。。这个很适合我……:)你能解释一下这个分解函数在这种情况下是如何工作的吗?@TBI它只是在换行符处拆分文本(并删除它们),然后将每个片段放入一个简单的零索引数组中。与
    内爆
    命令相反。这两种方法都非常有用,还有
    extract
    ,我以前确实想到过这一点,但是如果我有太多的错误要显示,这将非常耗时。因此,我选择了keyboardSmasher提供的答案。