2014-01-29 95 views
0

這是我的PHP代碼:DOM文檔類型對象識別

$dom = new DOMDocument(); 
$html ='<html><body><input type="text" name="test" id="test" class="form-control" value="120.00" style="text-align: right;"></body></html>'; 
$dom->loadHTML($html);  
$myElement = $dom->getElementById("test"); 

如何獲得對象和類型的財產(INPUT TYPE = 「隱藏」)的類型?例如

if ($myElement->is('input')) then etc.... 
if ($myElement->is('img')) then etc.... 
if (($myElement->is('input')) && ($myElement->has('hidden'))) then etc.... 

是可能的嗎? 非常感謝。 Aesis。

回答

0

你可以做這樣的...讓使用DOMDocument類的getAttribute

<?php 
    $dom = new DOMDocument(); 
    $html ='<html><body><input type="text" name="test" id="test" class="form-control" value="120.00" style="text-align: right;"></body></html>'; 
    $dom->loadHTML($html); 
    foreach ($dom->getElementsByTagName('input') as $tag) { 
     if ($tag->getAttribute('name') === 'test') { 
     echo $tag->getAttribute('value'); //"prints" 120.00 
     echo $tag->getAttribute('type'); //"prints" text (attribute) 
     } 
    } 

的您可以爲其他屬性做同樣也是。

+1

非常感謝。作品! –

0

嘗試...... 您可以使用下面的代碼獲取對象的類型..

$typeofObj = $myElement->nodeName; 
echo $typeOfObj; 

,並找到它的屬性是「隱藏」,然後

$node = $dom->saveHTML($myElement); 
if(preg_match("/(hidden)/i",$node)) { 
    // has hidden 
} 
else { //not have hidden 
    }