为什么mysqli_connect()返回true,即使我传递错误的用户名?

Here's my code.

<?php
    $server = "localhost";
    $uname = "replace it with anything";
    $pswd = "";

    $conn = mysqli_connect($server, $uname, $pswd);

    if(!$conn){
        die('Caught');
    }
    else{
        die('Connected');
    }   
?>

No matter what I passed in the mysqli_connect() as username. It always returns true. In the case of the wrong password, it shows an error that accesses denied, but I don't know why, no matter what I enter in the username, it always returning true.

It does not return a boolean but an object which represents the connection. You can then check the object for connectivity. From the manual:

<?php
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');

/*
 * This is the "official" OO way to do it,
 * BUT $connect_error was broken until PHP 5.2.9 and 5.3.0.
 */
if ($mysqli->connect_error) {
    die('Connect Error (' . $mysqli->connect_errno . ') '
            . $mysqli->connect_error);
}

Try

   <?php
$mysqli = new mysqli("host", "username", "password", "database") or die($mysqli->error());

if ($mysqli->connect_errno) {
echo "error";
exit();
}

    ?>