0

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="','"');

しかし、最初の属性名を取得する方法が見つかりませんか?

4

3 に答える 3

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
于 2015-09-21T06:15:22.727 に答える
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');
}
?>
于 2015-09-21T06:17:52.123 に答える