我有一个网站,其中一个插件加载变量,其中包含一个CDN JS文件。这个CDN JS文件使用$document.write();
现在,我想修改此$document.write();
的内容如何将CDN请求的结果加载到变量?
例如: 我的PHP代码是:
$var = '<script type="text/javascript" src="http://edeetion.com/ebayproxy/index.js.php?&requestType=EBaySeller&sellerID=holyheadmusic&maxEntries=2&openlink=_blank&categoryId=&sortOrder=EndTimeSoonest&item.filter(0).name=ListingType&item.filter(0).value(0)=All&sourceSite=3&floatorder=floating&displaydate=true&proxy_display_language=en"></script>';
echo $var;
现在这个脚本调用我希望将它存储在变量&amp;后来回到我的网站上。
相反,这只是echos这个脚本。这个脚本是envokes&amp; $document.write
做了它的东西。我无法控制它。
我尝试过使用preg_replace()
的解决方案,但只有在HTML内容可以加载到PHP变量中时才能使用。
请帮忙!
答案 0 :(得分:1)
分享,因为它可能对其他人有用。
找到解决方案:
$doc = new DOMDocument();
@$doc->loadHTML($resp);
$xpath = new DOMXPath($doc);
$src = $xpath->evaluate("string(//script/@src)");
$Vdata = file_get_contents($src);
这种方式$Vdata
包含CDN JS&amp;的内容。我可以使用preg_replace();
所以这里的英雄是file_get_contents();
答案 1 :(得分:0)
为什么不在服务器上使用该脚本?因为你现在正在做的是尝试仅从你的服务器处理脚本,这会破坏CDN的目的。而是在您的服务器上使用它,然后您将完全控制它。