0

我需要在表中创建结果表。

<?php
$string = '<?xml version="1.0" encoding="utf-8"?>
<books>
<book isbn="978-1594489501">
<title>book Title 1</title>
<author>Author 1</author>
<publisher>publisher 1</publisher>
<price>price 1</price>
<genre>English 1</genre>
</book>
<book isbn="978-1594489502">
<title>book Title 2</title>
<author>Author 2</author>
<publisher>publisher 2</publisher>
<price>price 2</price>
<genre>English 2</genre>
</book>
</books>';
$xml = new SimpleXMLElement($string);
$string = 'book';
$result = $xml->xpath("//book[contains(translate(title,
'abcdefghijklmnopqrstuvwxyz', 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'), '".strtoupper($string)."')]"); 
foreach($result as $one){
echo "<table border='1' width='500'>\n";
echo "<tr><th>Title</th><td>$one->title</td></tr>\n";
echo "<tr><th>Author</th><td>$one->author</td></tr>\n";
echo "<tr><th>Publisher</th><td>$one->publisher</td></tr>\n";
echo "<tr><th>Price</th><td>$one->price</td></tr>\n";
echo "<tr><th>Genre</th><td>$one->genre</td></tr>\n";
echo "</table>\n";  
}
?>

在 HTML 代码中像这样

结果 1 标题:标题 1 作者:作者1 发布:发布 1 价格:价格1 类型:英语1 结果 2 标题:标题 2 作者:作者2 发布:发布2 价格:价格2 类型:英语2 结果 3 标题:标题 3 作者:作者3 发布:发布 3 价格:价格3 类型:英语3 结果 4 标题:标题 4 作者:作者4 发布:发布4 价格:价格4 类型:英语4 结果 5 标题:标题 5 作者:作者5 发布:发布5 价格:价格5 类型:英语5 结果 6 标题:标题 6 作者:作者6 发布:发布6 价格:价格6 类型:英语6

4

3 回答 3

0

您必须使用以下内容:

echo '<table border="1" bordercolor="FFCC00" style="background-color:FFFFCC" width="600" cellpadding="3" cellspacing="3">';
echo '<tr>';
$i = 1;
foreach($result as $one){
    echo '<td>';
    echo '<table>';
    echo '<tr><th>Result </th><td>'.$i.'</td></tr>';
    echo '<tr><th>Title: </th><td>'.$i.'</td></tr>';
    echo '<tr><th>Author: </th><td>'.$i.'</td></tr>';
    echo '<tr><th>Publish: </th><td>'.$i.'</td></tr>';
    echo '<tr><th>Price: </th><td>'.$i.'</td></tr>';
    echo '<tr><th>Genre: </th><td>'.$i.'</td></tr>';
    echo '</table>';
    echo '</td>';
    if ($i%3==0) echo '</tr><tr>';
}
echo '</table>';
于 2012-09-25T08:48:32.247 回答
0

我一直使用 xml2array 进行一些简单的 XML 到 PHP 数组的转换。

http://www.bin-co.com/php/scripts/xml2array/

它有很多选项,并且非常易于使用。我不知道它对其他库的效率如何,但它总是为我完成小项目的工作。

于 2012-09-23T18:57:27.087 回答
0

像这样的东西?

    echo "<table border='1' width='500'>\n";

    foreach($result as $one){

        echo "
        <tr>
            <th>Title</th>
            <th>Author</th>
            <th>Publisher</th>
            <th>Price</th>
            <th>Genre</th>
        </tr>";

        echo "<tr>";
        echo "<td>$one->title</td>";
        echo "<td>$one->author</td>";
        echo "<td>$one->publisher</td>";
        echo "<td>$one->price</td>";
        echo "<td>$one->genre</td>";
        echo "</tr>";

    }

    echo "</table>\n";
于 2012-09-23T19:02:04.953 回答