我正在尝试使用Xpath evaluate对表的特定列求和。如果所有单元格都包含数字,则效果很好但是,一旦该列的某些单元格为空,我就会得到&#34; NAN&#34;结果。所以,我真的需要一个解决方案,将空单元格<td></td>
作为数字或&#34; 0&#34;处理。
这是我目前的代码,例如第4栏:
$file = $DOCUMENT_ROOT. 'URL';
$doc = new DOMDocument;
// load the document
$doc->loadHTMLFile($file);
$xpath = new DOMXpath($doc);
print $xpath->evaluate('sum(//table[td/u/b/.="Contracts"]/tr[position() > 1]/td[4])');
echo ' mio $</td><td>';
指数4(第1年)有效。我想要一个针对索引5到9(第2到第6年)的解决方案,其中预计未来几年将出现空单元格。您也可以在源html文件中看到它。
<table>
<td align="center" colspan="1"><u><b>Contracts</b></u></td>
<tr><th>pos</th><th>player</th><th>age</th><th>year 1</th><th>year 2</th><th>year 3</th><th>year 4</th><th>year 5</th><th>year 6</th></tr>
<tr><td CLASS=tdp>PG</td><td CLASS=tdp><a href="IsaiahThomas18.htm">Isaiah Thomas </a></td><td>27</td><td>16.75</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>PG</td><td CLASS=tdp><a href="DerrickRose365.htm">Derrick Rose </a></td><td>28</td><td>1.03</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>SG</td><td CLASS=tdp><a href="DionWaiters14.htm">Dion Waiters </a></td><td>25</td><td>1.05</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>SG</td><td CLASS=tdp><a href="EricGordon17.htm">Eric Gordon </a></td><td>28</td><td>2.10</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>SF</td><td CLASS=tdp><a href="CarmeloAnthony90.htm">Carmelo Anthony </a></td><td>32</td><td>2.65</td><td>2.65</td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>SF</td><td CLASS=tdp><a href="TonyAllen25.htm">Tony Allen </a></td><td>35</td><td>10.50</td><td>10.50</td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>PF</td><td CLASS=tdp><a href="CodyZeller89.htm">Cody Zeller </a></td><td>24</td><td>2.65</td><td>2.65</td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>PF</td><td CLASS=tdp><a href="RichaunHolmes22.htm">Richaun Holmes </a></td><td>23</td><td>5.00</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp> C</td><td CLASS=tdp><a href="RudyGobert24.htm">Rudy Gobert </a></td><td>24</td><td>16.40</td><td>16.40</td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp> C</td><td CLASS=tdp><a href="JahlilOkafor19.htm">Jahlil Okafor </a></td><td>21</td><td>1.10</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>PG</td><td CLASS=tdp><a href="TyLawson99.htm">Ty Lawson </a></td><td>29</td><td>3.40</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>SG</td><td CLASS=tdp><a href="JustinHoliday20.htm">Justin Holiday </a></td><td>27</td><td>1.60</td><td></td><td></td><td></td><td></td><td></td></tr>
<tr><td CLASS=tdp>PG</td><td CLASS=tdp><a href="RonniePrice23.htm">Ronnie Price </a></td><td>32</td><td>1.80</td><td></td><td></td><td></td><td></td><td></td></tr>
</table>