2013-02-27 54 views
0

一部分我從數據庫字符串:分割字符串得到它

<href="/supplier/plant-whole-payment-details/80912">22441769</a> 

我只需要。我怎樣才能得到它在PHP中?

回答

1
$str = '<href="/supplier/plant-whole-payment-details/80912">22441769</a>'; 

preg_match('/href=".*\/(?P<digit>\d+)"/', $str, $matches); 

echo $matches['digit']; 
+1

thanx很多好友 – user2114575 2013-02-27 09:06:42

+0

@ user2114575:welcome :),一旦你發現這個答案有用接受它(點擊勾號),有些人可能會覺得很有用。 – 2013-02-27 09:08:39

1

你不想拆分的字符串,但提取它的一部分。正則表達式派上用場。如果字符串始終是一個類似於在你的榜樣,用這個來得到/"之間數字的第一場比賽:

$string = '<href="/supplier/plant-whole-payment-details/80912">22441769</a>'; 
preg_match('#/(\d+)"#', $string, $matches); 
$value = $matches[1]; 

進一步解釋:

  • \d代表「數字「
  • +代表」一個或多個「
  • #是一個分隔符,表示開始和e第二圖案
  • 的括號標記子模式,將被添加到$matches陣列
-3

使用此...

在這個例子中,我們將打破一個字符串數組:

<?php 
$str = "Hello world. It's a beautiful day."; 
print_r (explode(" ",$str)); 
?> 
+0

請嘗試給出正確的解決方案,而不是一個錯誤的例子... – HamZa 2013-02-27 09:08:00

-1

你可以用substr來做到這一點。檢查這個代碼。

<?php 
// your text which needs to be splited . 
$text = "/supplier/plant-whole-payment-details/80912" ; 

$reqText = substr($text , -5); 

?> 

這將輸出字符串末尾的數字。

+0

首先檢查此代碼,並給予一個negetive標誌。 – 2013-02-27 09:12:50

+0

更好:首先檢查問題中的字符串,然後給出答案;)另外,您認爲該數字總是具有相同的長度。 – 2013-02-27 09:16:20

+0

@fab:檢查問題。它寫在任何字符串將是不同的長度?也是他在數據庫中保存了一個整體錨標籤。看到諷刺:) – 2013-02-27 09:21:39