webservco/database-legacy

一个PHP组件/库。

v0.10.1 2024-07-23 13:09 UTC

This package is auto-updated.

Last update: 2024-09-15 09:58:08 UTC


README

为必须使用过程式方法的老旧项目提供辅助工具。

在将代码从PHP 5升级到PHP 8时可以使用。

需求:webservco/configuration-legacy

设置

Composer require

"webservco/database-legacy": "^0"

用法

use \WebServCo\Database\Service\Legacy\Procedural\Db;

$result = Db::query(
    sprintf("SELECT something FROM somewhere WHERE id = %s"),
    Db::escape($validatedInput),
);
$something = Db::result($result, 0, 0);

使用辅助 Db 类将 ext/mysql 转换为 ext/mysqli

# mysql_query
ag --php -l -Q 'mysql_query(' public | xargs sed -i -e "s#mysql_query(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::query(#g"

# mysql_escape_string
ag --php -l -Q 'mysql_escape_string(' public | xargs sed -i -e "s#mysql_escape_string(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::escape(#g"

# mysql_fetch_array
ag --php -l -Q 'mysql_fetch_array(' public | xargs sed -i -e "s#mysql_fetch_array(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::fetchRow(#g"

# mysql_fetch_assoc
ag --php -l -Q 'mysql_fetch_assoc(' public | xargs sed -i -e "s#mysql_fetch_assoc(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::fetchRow(#g"

# mysql_insert_id
ag --php -l -Q 'mysql_insert_id(' public | xargs sed -i -e "s#mysql_insert_id(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::insertId(#g"

# mysql_num_rows
ag --php -l -Q 'mysql_num_rows(' public | xargs sed -i -e "s#mysql_num_rows(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::numRows(#g"

# mysql_result
ag --php -l -Q 'mysql_result(' public | xargs sed -i -e "s#mysql_result(#\\\WebServCo\\\Database\\\Service\\\Legacy\\\Procedural\\\Db::result(#g"