没有数组的Print_r错误

时间:2015-07-07 13:35:10

标签: php arrays forms

我只是在编写一个网站,偶然发现了一个我无法利用热门搜索引擎解决的问题。

问题:如何在不显示不必要文本的情况下print_r数组? 示例:显示错误之前的'Array()'。

示例:PHP CONFIG CODE

if(isset($submit))
{
$errors = array();

if( $password == $username )
{
    $errors[] = 'Same Username and Pass';
}
if( $userlen < 8 )
{
    $errors[] = 'Username must be atleast 8 characters.';
}
if( $userlen > 32 )
{
    $errors[] = 'Username must only contain 32 characters';
}

if (count($errors) == 0)
{
    require 'db/connect.php';
    $insertUser = "INSERT INTO users (username, password) VALUES ('$username','$password')";
    mysql_query($insertUser);
}
} 
?>

我调用错误数组的代码:

<div id='errs'>

<?php 
print_r($errors);
?>

</div>

这是结果的示例:'数组([0] =&gt;用户名必须至少为8个字符。)'我希望这只读'用户名必须至少为8个字符'。

先谢谢了! - 对noob问题感到抱歉。

2 个答案:

答案 0 :(得分:0)

我认为您正在寻找的是循环遍历数组,查看foreach语句here,您将遍历$ errors数组。

foreach ($errors as $eachError) {
    echo $eachError;
}

答案 1 :(得分:0)

  1. 停止使用MySQL_ *它已被弃用。
  2. 准备/清理您的陈述。
  3. 使用MySQLi _ *

    <?php if(!empty($errors)) {?>
    
    <div id='errs'>
    
    <?php 
    foreach($errors as $error)
    {
    echo $error;
    }
    ?>
    
    </div>
    
    <?php } else {} ?>