如何使用PHP计算div中存在的文本框的数量

时间:2016-06-27 08:53:56

标签: php html

我需要一个帮助。我在div中有多个文本字段,我需要使用PHP来计算它们。我正在解释下面的代码。

  <div class="questionshowp">
        <input name="optional_0_0_ans" id="optional_0_0_ans" class="form-control firstsec" placeholder="Text, Image URL, or LaTeX" value="" type="text">
     <input name="optional_0_1_ans" id="optional_0_1_ans" class="form-control firstsec" placeholder="Text, Image URL, or LaTeX" value="" type="text">
     <input name="optional_0_2_ans" id="optional_0_2_ans" class="form-control firstsec" placeholder="Text, Image URL, or LaTeX" value="" type="text">
    </div>
<?php

?>

这里有3个输入字段存在于div中。这里我需要回显使用PHP存在多少个字段。请帮助我。

2 个答案:

答案 0 :(得分:1)

我假设HTML不是使用PHP构建/呈现的,因此您可以使用PHP内置的DOM解析器。

<?php
//** Load the HTML **//
//$html  = file_get_contents('http://www.url.com'); //Load the HTML from external webpage.
$html  = file_get_contents(__FILE__); //Load the HTML from the current webpage.

//** Load HTML contents into DOM tree **//
$dom   = new DOMDocument();
$dom->loadHTML($html);

//** Initialize DOM Parser **//
$finder = new DomXPath($dom);

//** Parse DOM for all occurences of <input> with parent <div> with class ="questionshowp' **//
$inputs = $finder->query("/html/body/div[@class='questionshowp']/input");

//** Determine how many input fields have type='text' **//
$count = 0;
foreach ($inputs as $input) {
  if ($input->getAttribute('type') === 'text') {
   $count++;
  }
}

//** Print Results! **//
echo "Number of <input> fields where @type = 'text' is -> " .$count ."\n";

参考
http://php.net/manual/en/book.dom.php

答案 1 :(得分:0)

在for循环中保持一个标志$ count并递增

$count = 0;

for loop {
$count++
}
echo $count;

$ count = count($ listValue);