我有一個簡單但不可見的(對我來說)代碼錯誤。你可以幫我嗎?XPath正則表達式結合preg_match
有了這個代碼在我的PHP文件:
$location = $xpath2->query("//script")->item(1)->textContent;
我得到了(選擇)此:
<script class="" type="text/javascript">
//<![CDATA[
var html = '';
var lat = 44.793530904744074;
var lang = 20.5364727973938;
if (GBrowserIsCompatible())
{
var map = new GMap2(document.getElementById("map_canvas"));
var ct = new GLatLng(lat, lang);
map.setCenter(ct, 15);
map.addControl(new GSmallMapControl());
//map.addControl(new GHierarchicalMapTypeControl());
var gm=new GMarker(ct);
if(html != '') {
GEvent.addListener(gm, "click", function() {
this.openInfoWindowHtml(html);
});
}
map.addOverlay(gm);
map.enableContinuousZoom();
map.enableInfoWindow();
}
//]]>
</script>
然後我嘗試使用此代碼獲取 'LAT' 和 '語言':
$location = $xpath2->query("//script")->item(1)->textContent;
preg_match('/var\s+lat\s+=\s+(\d+\.\d+)\s*;/', $location, $lat);
preg_match('/var\s+lang\s+=\s+(\d+\.\d+)\s*;/', $location, $lng);
$data['lat'] = $lat[1];
$data['lng'] = $lng[1];
但總是顯示lat
和lang
是0
,0
當它們應該是44.34534
和20.5345
。
請幫助!在那裏你認爲我錯了(我的英語不是很好,對不起爲)
確定'lang'拼寫正確 –
是我」?當然,因爲我複製該代碼。100%是'lang' – asdasdasd