我认为这是一件容易的事,但显然不是。
$dom = new DOMDocument();
$dom->loadHTMLFile("myhtml.html");
$timestamp = $dom->getElementById('timestamp');
$timestamp = $dom->saveHTML($timestamp);
$matches_out = array();
if (preg_match_all('/<div id="timestamp">(.*)<\/div>/', $timestamp, $matches_out)) {
$timestamp = $matches_out[0];
}
echo $timestamp;
我需要从数组中获取值并将其存储在$timestamp
变量中。当我使用print_r()
时,我得到Array ( [0] =>1422936994)
。我认为这意味着得到我的时间戳我只做$matches_out[0]
因为我可以在零指数上看到它,或者我错过了什么。
试图回应它让我这样:Notice: Array to string conversion in C:\xampp\htdocs\myscript.php on line 10
答案 0 :(得分:1)
$ timestamp是一个数组。 而不是
echo $timestamp;
DO
echo $timestamp[0];
如果你不想要索引,那么又一次:
$newTimestamp = $timestamp[0];
echo $newTimestamp;
答案 1 :(得分:1)
$matches_out
是多维数组。所以你的正确代码就像$matches_out[0][0]
。请再次检查您的阵列,以确保您获得正确的值。
答案 2 :(得分:0)
您正在调用错误的项目,时间戳变量已成为数组 像这样称呼它
$timestamp[0]