我在PHP中为cURL创建了一个包装函数.它的简化版本如下所示:
function curl_get_contents($url, $try = 1) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, '1');
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, '1');
// Execute the curl session
$output = curl_exec($ch);
if ($output === FALSE) {
if ($try == 1) { //Try again
return $this->curl_get_contents($url, 2);
} else {
return false;
}
}
}
Run Code Online (Sandbox Code Playgroud)
如您所见,如果失败,我会强制重试该函数.我需要跑curl_close()
吗?PHP是否关闭脚本末尾的所有句柄?
UPDATE
链接的问题在答案中非常含糊,并且不支持数据.我真的很感激基于一个分析器的答案,该分析器显示PHP立即关闭连接.
我有一个YYYYMMDD或20120101格式的日期列.这是因为SAP以此格式存储它,因此无法更改此格式.
如何在MySQL查询中将其转换为YYYY-MM-DD格式?在DB2中,我使用了to_date()函数.
在MySQL中,我正在尝试STR_TO_STRING()函数,但它返回'null'.
SELECT STR_TO_DATE(VBAP.ERDAT,'%Y-%m-%d') FROM VBAP
Run Code Online (Sandbox Code Playgroud) 背景
我有一个包含大约 1600 万条记录的 MySQL 数据库。有 2 列created_at
,updated_at
目前已datetime
格式化。
问题
我想UNIX Timestamp
通过转换所有值并使用新值更新记录来更改此设置。
我知道如何在循环中使用 PHP 来执行此操作,但是有没有办法通过在 MySQL 中执行单个查询来执行此更新?