我正在尝试获取此数组中的数据,我只需要将 DATELOG 和 DATECLOSED 设置为变量,以便我可以在脚本中的其他地方处理它们,但是无论我做什么,我都会得到一个包含结果而不仅仅是结果的数组。
显然,我对处理数组的理解并不达标,任何人都可以帮助我指出正确的方向,因为到目前为止我阅读的所有内容似乎都没有涵盖这一点。
多维数组?!?
这是我到目前为止的脚本:
//QUERY ASSYST
$assystQ =
"
SELECT
PRODUCT_N,
MAX(INCIDENT.INCIDENT_REF) MAX_INCIDENT_REF,
MAX(DATE_LOGGED) DATELOGGED,
MAX(inc_close_date) DATECLOSED,
DATEDIFF(DAY,MAX(DATE_LOGGED),GETDATE()) DAYS_SINCE
FROM INCIDENT
LEFT JOIN ITEM
ON INCIDENT.ITEM_ID = ITEM.ITEM_ID
LEFT JOIN PRODUCT
ON ITEM.PRODUCT_ID = PRODUCT.PRODUCT_ID
WHERE EVENT_TYPE = 'i'
AND INC_SERIOUS_ID = '$alertType'
AND product_n = '$assystProductName'
AND inc_status = 'c'
GROUP BY PRODUCT_N
";
$assystR = sqlsrv_query($assystconn, $assystQ);
while ($ResultOobj = sqlsrv_fetch_array($assystR))
{
// CONVERT RESULTS
$incidentReferance = $ResultOobj[MAX_INCIDENT_REF];
$incidentOpen = $ResultOobj[DATELOGGED];
//ECHO RESULTS
var_dump($incidentOpen);
echo "<br>Last Incident Referance: " .$incidentReferance;
};
这是var_dump正在返回的内容
我只是不明白如何将该日期从数组中取出并放入单个字符串中。
object(DateTime)#5 (3) { ["date"]=> string(26) "2014-10-20 09:41:40.140000" ["timezone_type"]=> int(3) ["timezone"]=> string(13) "Europe/Dublin" }
你可以看看 PHP Docs 并使用它:
$time = date('Y-m-d', $incidentOpen->getTimestamp());
日期时间是一个对象,而不是一个数组。它具有从中获取数据的方法。您可以使用函数 date() 格式化结果日期时间。
或者,如果您只需要它的值date
:
$time = $incidentOpen->date;