PHP Conference Nagoya 2025

mysql_get_server_info

(PHP 4 >= 4.0.5, PHP 5)

mysql_get_server_info取得 MySQL 服务器信息

警告

本扩展自 PHP 5.5.0 起已废弃,并在自 PHP 7.0.0 开始被移除。应使用 MySQLiPDO_MySQL 扩展来替换之。参见 MySQL:选择 API 指南来获取更多信息。用以替代本函数的有:

说明

mysql_get_server_info(resource $link_identifier = NULL): string|false

检索 MySQL 服务器版本。

参数

link_identifier

MySQL 连接。如不指定连接标识,则使用由 mysql_connect() 最近打开的连接。如果没有找到该连接,会尝试不带参数调用 mysql_connect() 来创建。如没有找到连接或无法建立连接,则会生成 E_WARNING 级别的错误。

返回值

Returns the MySQL server version on success 或者在失败时返回 false.

示例

示例 #1 mysql_get_server_info() 示例

<?php
$link
= mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!
$link) {
die(
'Could not connect: ' . mysql_error());
}
printf("MySQL server version: %s\n", mysql_get_server_info());
?>

以上示例的输出类似于:

MySQL server version: 4.0.1-alpha

参见

添加备注

用户贡献的备注 3 notes

up
3
Kalle Sommer Nielsen
17 years ago
An alternative to mysql_get_client_info() is to use the VERSION() function in MySQL language like:

<?php
$query
= mysql_query("SELECT VERSION() as mysql_version");
?>

The output is the same as mysql_get_client_info()
up
2
cmscoder at seasamecreek dot info
16 years ago
Here is something I put together because I needed a way to pull the MySQL version number from the server without actually having a connection. This was due to being part of a server info screen prior to installation of a cms. Users need to know if their MySQL is supported or not prior to installation right? :)

This will scrape the phpinfo page looking for the MySQL row that says Client API version and return the version number after it. This could also be used to scrape just about anything from the phpinfo page. :)

ob_start();
phpinfo(INFO_MODULES);
$info = ob_get_contents();
ob_end_clean();
$info = stristr($info, 'Client API version');
preg_match('/[1-9].[0-9].[1-9][0-9]/', $info, $match);
$gd = $match[0];
echo 'MySQL: '.$gd.' <br />';

This will output:
MySQL: 4.1.22 (which is the version on my server)

I know this is crude but it's the only thing I could come up with and there isn't anything like this info available online so here it is. I suck at preg_match and it would be helpful if someone could modify the string here to stand the test of time.
up
-1
cNOooSPAMlmax1 at o2 dot pl
18 years ago
That's better:

<?php
mysql_connect
('localhost', 'user', 'password') or
die(
'Could not connect: ' . mysql_error());
$a = mysql_get_server_info();
$b = substr($a, 0, strpos($a, "-"));
echo
$b;
?>
To Top