<?php
$apiMonitor = DB::table('sites')->select('uptime_access_code')->get();
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => "https://api.uptimerobot.com/v2/getMonitors",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => "api_key=Private&format=json&logs=1&monitors=$apiMonitor&custom_uptime_ratios=1-7-30",
CURLOPT_HTTPHEADER => array(
"cache-control: no-cache",
"content-type: application/x-www-form-urlencoded"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
$data = json_decode($response);
$custom_uptime = ($data->monitors[0]->custom_uptime_ratio);
$uptime = explode("-",$custom_uptime);
}
?>
我已经获得了正常运行时间访问的值,但是它是一个数组。问题是我的监视器仅需要该值,但是当我dd()时,会发生这种情况。
这是我的dd($ apiMonitor);
我想要发生的输出是
CURLOPT_POSTFIELDS => "api_key=Private&format=json&logs=1&monitors=778780885&custom_uptime_ratios=1-7-30",
您可以看到的输出已经正常工作,但是我如何能够从数据库中获取数据并将uptime_access_code的值放入监视器?谢谢。
答案 0 :(得分:2)
get()
返回所有行的集合,因为您仅获得一列,而不指定where子句。如果只需要一个值,则可以使用value
获得一个值(以前的版本使用pluck
)
$apiMonitor = DB::table('sites')->value('uptime_access_code');