我有一个变量$结果,其中获取的网页内容使用curl存储。我想搜索该变量或网页,并找到某个字符串说x,然后将下一个5行存储在一个新的变量。从PHP中的变量中获取字符串?
我可以在PHP中做到吗?
在此先感谢.......
我有一个变量$结果,其中获取的网页内容使用curl存储。我想搜索该变量或网页,并找到某个字符串说x,然后将下一个5行存储在一个新的变量。从PHP中的变量中获取字符串?
我可以在PHP中做到吗?
在此先感谢.......
我建议你使用刮图书馆像这样的:http://simplehtmldom.sourceforge.net/
你可以尝试找到strpos位置
$findme = 'x';
$pos = strpos($result, $findme);
然后substr结果(不确定有关linebreakes)。
或者使用正则表达式
看一看这里:
http://php.net/manual/en/function.strpos.php http://php.net/manual/en/function.substr.php http://php.net/manual/en/function.preg-match.php
tonymarschall,我已经试过了,我差不多完成了。现在主要的问题是我有要取出的字符串的起点,但由于要取出的字符串具有动态长度,但字符串结束后的内容每次都是相同的。那么我应该怎么做呢? – kanwarpal 2012-03-07 14:41:30
如果字符串结尾已定义,请尝试获取字符串结尾的起始位置。然后添加strlength并将其与substr一起使用。 – tonymarschall 2012-03-07 15:07:56
我想你的问题改变了,现在你正在寻找两个固定字符(或字符串)之间的字符串。
<?php
$webpage_content = "Here
is
some text...
#000001 This is an Error code!
It can have multiple lines!
!content
This is normal content";
$start_element = "#";
$end_element = "!content";
$start_pos = strpos($webpage_content, $start_element);
$en_post = strpos($webpage_content, $end_element);
$my_string = substr($webpage_content, $start_pos, $en_post-$start_pos);
print $my_string;
?>
您应该掌握所有信息,您需要解决您的问题。请阅读我们发布的链接。 PHP手册以20多种语言提供。
'我可以用PHP吗?'是的,你可以! – Sarfraz 2012-03-06 16:38:06
在字符串中搜索字符串很简单 - 例如 - ['strpos()'](http://uk3.php.net/manual/en/function.strpos.php) - 但这里的难点在于你如何定义'下5行'。如果你使用'fetched webpage contents',那么[DOM解析器](http://uk3.php.net/manual/en/book.dom.php)可能是更好的选择... – DaveRandom 2012-03-06 16:39:30
当然可以!向我们展示您的第一次尝试,然后我们会告诉您如何改进您的代码。 – ghoti 2012-03-06 16:39:55