我目前正在使用此代码:
$blog= file_get_contents("http://powback.tumblr.com/post/" . $post);
echo $blog;
而且它有效。但 tumblr 添加了一个脚本,每次输入密码字段时都会激活该脚本。所以我的问题是:
我可以用 file_get_contents
删除某些部分吗? ?或者只是删除 <html>
上面的所有内容标签?我可以杀死整个div
所以它根本不会加载?如果是这样;怎么办?
编辑:
我设法用简单的方法做到了。跳过 766 个字符。该脚本现在按预期工作!
$blog= file_get_contents("powback.tumblr.com/post/"; . $post, NULL, NULL, 766);
最佳答案
file_get_contents
之后返回时,你手里拿着一根绳子。您可以对它做任何您想做的事情,包括剪切掉其中的一部分。
实际切割有两种方法:
- 使用字符串函数,如
str_replace
,preg_replace
和别的;确切的食谱取决于您需要做什么。这种方法是kind of frowned upon因为您在错误的抽象级别上工作,但在某些情况下,它具有无与伦比的性能与时间花费比。 - Parsing the HTML进入DOM tree ,适当修改它(这次在适当的抽象级别工作),然后 turn it back into a string并回应它。如果您的需求不是非常简单并且更易于维护,那么使用起来会更方便,但通常需要编写更多代码。
如果您想做一些最自然地用 HTML 文档术语表达的事情(“剪掉这个 <div>
”),那么不要受诱惑,请使用第二种方法。
关于php - 从 file_get_contents 更改/删除 html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9404198/