脑动力:PHP函数速查效率手册
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1.2 mysql_pconnect函数:打开MySQL服务器的持久连接

【功能说明】

该函数将打开一个到MySQL服务器的持久性连接。如果连接成功将返回一个持久性连接的标识符,如果连接失败将返回FALSE。

该函数打开到MySQL服务器的连接是持久性的,而要想打开一个非持久性的连接,就要使用函数mysql_pconnect()。该函数和函数mysql_connect()的用法很相似。该函数有以下三个主要特点。

■ 当使用该函数连接MySQL服务器时,PHP机制会先去寻找之前是否用该用户名和密码连接过同一台服务器,如果连接过,则返回之前连接的持久性的连接标识。如果没有连接过,则尝试打开一个新的连接。

■ 使用该函数打开到MySQL服务器的连接后,该连接通道不会被MySQL服务器关闭,就连函数mysql_close()也无法关闭此连接。打开的连接是持久的,以备以后之用。

■ 使用该函数建立持久性连接,需要修改Apache和MySQL的配置,主要作用是防止超过连接到同一MySQL服务器的连接数目。

【函数语法】

resource mysql_pconnect([string server[,string username [,string password[,bool new_link[,int client_flags]]]]])

该函数的语法说明和函数mysql_connect()很相似,请参见mysql_connect()函数的函数语法。该函数的返回值为resource。

【示例程序】下面使用了本例函数打开一个到MySQL服务器的持久性连接。代码如下:

<?php
    //打开一个持久的MySQL服务器的连接
    $link=mysql_pconnect("localhost","admin","123456")or die("connection error: " . mysql_error());
    echo $link;            //输出连接后返回的持久性标识符
    mysql_close($link);    //关闭打开的连接通道
?>

以上代码的运行结果如图1.2所示。

图1.2 运行结果

上述代码中,$link = mysql_pconnect("localhost", "admin","123456")or die("connection error: " . mysql_error());指定打开本地的MySQL服务器,使用的用户名是"admin",密码是"123456"。如果连接失败将终止以下脚本程序的运行,并返回错误的信息。上面返回的结果是一个错误的信息,connection error:Access denied for user ‘admin’@’localhost’ (using password:YES),从这可以看到:MySQL服务器拒绝了用户是"admin"的访问,说明代码中指定的用户名是错误的,而指定的密码是正确的。