leonid-slv/mysql2pdo

被新版本的PHP包围的旧mysql函数

1.3.3 2020-10-14 08:12 UTC

This package is auto-updated.

Last update: 2024-09-14 16:50:25 UTC


README

该包提供了全局的 mysql_* 函数旧模型(PHP版本低于5.5),在原始MySQL扩展不可用时可以使用。

该库复制了 mysql_* 函数的所有流行功能。非常高的效率,与直接使用 PDO 或 mysqli 相比接近 100%。

需要注意的是,支持加密SSL证书。

PHP 7 mysql_connect
PHP 7 mysql_select_db
PHP 7 mysql_real_escape_string
PHP 7 mysql_query
PHP 7 mysql_result
PHP 7 mysql_insert_id
PHP 7 mysql_fetch_array
PHP 7 mysql_fetch_assoc
PHP 7 mysql_fetch_row
PHP 7 mysql_num_rows
PHP 7 mysql_set_charset
PHP 7 mysql_error
PHP 7 mysql_errno
PHP 7 mysql_free_result
PHP 7 mysql_close

丢失连接

在大多数情况下,一切正常!但是,当PDO驱动器的设置很奇怪时,例如,在Yandex Function云中发现过这种情况。为了避免这种情况,只需在代码的最后插入

//Close all connections for fast restart
mysql_close();

示例

经典连接

//Connect and print date
$link = mysql_connect($host, $user, $password);
if ($link == false) { exit(); };
mysql_select_db($db,$link);
mysql_query('SET NAMES "utf8"');
echo (mysql_result(mysql_query('SELECT NOW();'),0,0));

SSL连接

//SSL connect and print date
$link = mysql_connect($host, $user, $password, 'yandex.crt');
if ($link == false) { exit(); };
mysql_select_db($db,$link);
mysql_query('SET NAMES "utf8"');
echo (mysql_result(mysql_query('SELECT NOW();'),0,0));

示例

$result = mysql_query('SELECT `PAYMENTS`.`ID`, `PAYMENTS`.`DATE`, `PAYMENTS`.`CONTRACT`, `PAYMENTS`.`SUM`, `PAYMENTS`.`OPERATOR`, `PAYMENTS`.`COMMENT`, `PAYMENTS`.`DELETED`, `USERS`.`GROUP` FROM `PAYMENTS`,`USERS` WHERE `USERS`.`CONTRACT`=`PAYMENTS`.`CONTRACT` AND `PAYMENTS`.`ID_MANAGER`="'.$id_manager.'"'.$payments_search.' ORDER BY `DATE` DESC LIMIT '.$payments_count.';');
for ($i=0; $i<mysql_num_rows($result); $i++)
  {
    echo '<td><u>'.mysql_result($result, $i, 0).'</u></td>';
    echo '<td><u>'.mysql_result($result, $i, "PAYMENTS.CONTRACT").'</u></td>';
  }

这是给谁的?

此包是为希望将PHP版本升级到已删除 mysql_connect/mysql_* 函数的版本,而不必重写整个代码库以替换这些函数到 PDO 或 MySQLI 的网站所有者/开发者。

关于

如果你遇到任何问题、错误、功能或改进建议,请发送给我,我会尽快处理。

@authors   Selvistrovich Leonid <crack-it@yandex.com>, Jaroslav Herber
@copyright GPL license
@license   https://gnu.ac.cn/copyleft/gpl.html
@link      https://github.com/Leonid-SLV/

版本

当前版本

版本 1.3

  • 更新了 mysql_close() 函数,在此之前有一个存根。请阅读上面的内容,务必使用!

版本 1.1

  • 支持SSL
  • 与直接使用相比 100% 效率
  • 经过验证的库,在高负载对象计费系统中运行