我有一個變量$結果,其中獲取的網頁內容使用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