2015-09-21 152 views
0

我試圖找到一種方法來獲得這個HTML屬性「名稱」的內容,使用PHP getStr,我無法讓它工作,無論如何,我已經搜查,但我找不到找到的東西可以幫助我。如何使用php getStr獲取html標籤的「name」屬性?

<input id="9d6e793e-eed2-4095-860a-41ca7f89396b.subject" maxlength="50" name="9d6e793e-eed2-4095-860a-41ca7f89396b:subject" value="" tabindex="1" class="subject required field" type="text"/> 

我想這個值轉換成字符串:

9d6e793e-eed2-4095-860a-41ca7f89396b:主題

我能得到這樣的變量的值之一:

<input type="hidden" name="message" value="1442814179635.Oz1LxjnxVCMMJ0QpV0wGLx4roEA="/> 

有了這個代碼:

getStr($b,'name="message" value="','"'); 

但我找不到方法來獲取第一個屬性名稱?

+0

可能重複PHP?](http://stackoverflow.com/questions/3577641/how-do-you-parse-and-process-html-xml-in-php) –

+0

您應該將該值保存在value屬性中,而不是保存在name屬性中。 – Shivam

+0

@Shivam,我沒有明白你的意思,我想要「name =」裏面的值我想要這個值「 –

回答

0

在PHP中使用正則表達式。此代碼應該是有幫助的:

<?php 

$str = '<input type="hidden" name="message" value="1442814179635.Oz1LxjnxVCMMJ0QpV0wGLx4roEA="/>'; 

//forward slashes are the start and end delimeters 
//third parameter is the array we want to fill with matches 
if (preg_match('/name="([^"]+)"/', $str, $m)) { 
    print $m[1]; 
} else { 
    //preg_match returns the number of matches found, 
    //so if here didn't match pattern 
} 

輸出:

message 
+1

你不應該用正則表達式解析html閱讀[這](http://stackoverflow.com/a/1732454/2847024) – DevDonkey

0

檢查PHP DOMElement::getAttribute方法。這一切都在手動

在這裏你去:

<?php 
$html = '<input id="9d6e793e-eed2-4095-860a-41ca7f89396b.subject" maxlength="50" name="9d6e793e-eed2-4095-860a-41ca7f89396b:subject" value="" tabindex="1" class="subject required field" type="text"/>'; 
$doc = new DOMDocument; 
$doc->loadHTML($html); 
$elements = $doc->getElementsByTagName("input"); 
foreach($elements as $element){ 
    echo $element->getAttribute('name'); 
} 
?> 
+0

這將是正確的答案,如果它有更多的細節。 – DevDonkey

+0

@DevDonkey好吧,好的,我已經添加完整的答案,甚至儘管人們應該對自己的 –

+0

進行一點研究,如果你要回答,正確回答。如果你不認爲應該回答一個問題,因爲它的問題不好,那麼不要。 – DevDonkey

0

這段代碼會做你想要什麼:

<?php 

     $b = '<input id="9d6e793e-eed2-4095-860a-41ca7f89396b.subject" maxlength="50" name="9d6e793e-eed2-4095-860a-41ca7f89396b:subject" value="" tabindex="1" class="subject required field" type="text"/>'; 

     echo "\$b = $b\n"; 

     $rest = substr(strstr($b,'name="'),6); 

     echo "\$rest = $rest\n"; 

     $name = strstr($rest,'"',true); 

     echo "\$name = $name\n"; 

    ?> 
[您如何分析和處理HTML/XML中的