我正在尝试创建一个尽可能精简的脚本。当前的实现需要 20 分钟来处理 3k 条记录。我写了一个快速而肮脏的脚本,它在大约 90 秒内处理了相同的信息。我现在必须提取配置信息和其他一些东西,所以我正在尝试优化我能做的一切。
这是我现在拥有的:
$key_query = mysql_query("SELECT * FROM configuration WHERE configuration_group_id = 6501 AND configuration_key = 'RCS_SKIP_DAYS';");
if (!$key_query) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
$key = mysql_fetch_array($key_query);
$skip_days = $key['configuration_value'];
mysql_free_result($key_query);
$key_query = mysql_query("SELECT * FROM configuration WHERE configuration_group_id = 6501 AND configuration_key = 'RCS_BASE_DAYS';");
if (!$key_query) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
$key = mysql_fetch_array($key_query);
$base_days = $key['configuration_value'];
mysql_free_result($key_query);
$key_query = mysql_query("SELECT * FROM configuration WHERE configuration_group_id = 6501 AND configuration_key = 'RCS_EMAIL_TTL';");
if (!$key_query) {
echo "DB Error, could not query the database\n";
echo 'MySQL Error: ' . mysql_error();
exit;
}
$key = mysql_fetch_array($key_query);
$ttl_days = $key['configuration_value'];
mysql_free_result($key_query);
$skip_date = date('Ymd',strtotime('-'.$skip_days.' day',time()));
$base_date = date('Ymd',strtotime('-'.$base_days.' day',time()));
$ttl_date = date('Ymd',strtotime('-'.$ttl_days.' day',time()));
我不确定是否可以将 3 个配置键放在一起并分配给变量,或者是否有更好的方法来优化它。
我感谢任何和所有的帮助!