[英]How can I access private property of BigQuery\Timestamp
我正在使用 BigQuery,但在檢索數據時遇到問題。 我有一個 BigQuery\Timestamp object
object(Google\Cloud\BigQuery\Timestamp)#1377 (1) { ["value":"Google\Cloud\BigQuery\Timestamp":private]=> object(DateTime)#1375 (3) { ["date"]=> string(26) "2020-12-09 16:16:56.706000" ["timezone_type"]=> int(1) ["timezone"]=> string(6) "+00:00" } }
value
屬性是private
的,所以我不能使用日期。 我收到此錯誤消息:
Cannot access private property Google\Cloud\BigQuery\Timestamp::$value
如何獲取date
屬性的字符串值? 我需要對兩個 bigQuery 數據集中的所有數據進行排序。 日期是關鍵元素,我希望結果結構如下
{
"data": {
"2020-12-12 12:00:00": {
"data1_from_datasetA": 1,
"data2_from_datasetA": 2,
"data1_from_datasetB": 3,
},
"2020-12-12 13:00:00": {
"data1_from_datasetA": 6,
"data2_from_datasetA": 5,
"data1_from_datasetB": 8,
},
"2020-12-12 14:00:00": {
"data1_from_datasetA": 12,
"data2_from_datasetA": 2,
"data1_from_datasetB": 6,
},
}
}
我建議要求不將時間戳轉換為對象的rawResults
,因為這會適得其反。
$queryResults = $bigQuery->runQuery($jobConfig, array(
'timeoutMs' => 55 * 10000,
'returnRawResults' => true
));
這樣,每個條目都作為一個簡單的純值返回。
正如iainn在評論中所建議的那樣,使用 class 的 get 方法可以完美地工作。
$dateTime = $row["created_at"]->get()->format('d-m-Y H:i:s');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.