【发布时间】:2016-07-15 02:33:03
【问题描述】:
我正在使用 PHP 和 HTML 制作一个小型金融市场小部件。我想将以下 CSV 字符串转换为 HTML 表格
result=1&size=200 EURUSD;1.11143;1.11143;1.11170;1.11025;1468549348 CADJPY;82.333;82.345;82.382;81.411;1468549348 EURGBP;0.81374;0.81386;0.83144;0.77313;1466801995 CADCHF;0.76110;0.76110;0.76120;0.75957;1468549347
我在一个名为 $result 的字符串中获取上述值。
如何显示为标准的 HTML 表格,例如:
符号 |投标 |问 |高 |低 |时间
欧元美元 | 1.11143 | 1.11143 | 1.11170 | 1.11025 | 1468549348
等等..
编辑:
试过
$csvData = $result;
$lines = explode("\n", $csvData);
echo "<table class='display' id='example'><thead >";
echo "<tr class = 'even_gradeC'>
<th class='history'><strong>Symbol</strong></th>
<th class='history'><strong>Bid</strong></th>
<th class='history'><strong>Ask</strong></th>
<th class='history'><strong>High</strong></th>
<th class='history'><strong>Low</strong></th>
<th class='history'><strong>Time</strong></th>
</tr>";
echo "</thead>";
foreach ($lines as $line)
{
$data = explode(';', $line );
if(count($data)==6)
{
echo"<tr class='even_gradeC'>";
foreach($data as $row => $value)
{
if($row<>6)
//{
if ($row==1)
{
echo "<td align='right'>";
echo $value;
echo "</td>";
}
elseif ($row==2)
{
echo "<td>";
echo $value;
echo "</td>";
}
elseif ($row==3)
{
echo "<td>";
echo $value;
echo "</td>";
}
elseif ($row==4)
{
echo "<td>";
echo $value;
echo "</td>";
}
elseif ($row==5)
{
echo "<td>";
echo $value;
echo "</td>";
}
elseif ($row==6)
{
echo "<td>";
echo $value;
echo "</td>";
}
else
{
echo "<td>";
echo $value;
echo "</td>";
}
}
echo "<td>";
echo $value;
echo "</td>";
}
}
echo "</tr>";
echo "</table>";
【问题讨论】:
-
尝试一下并回复我们。堆栈溢出不是在这里为您完成工作的。
-
用空格分割字符串,然后使用 ; 进行“爆炸”作为分隔符
-
提示:
explode() -
已经摆好桌子了。但是第一列显示结果=1&size=0 EURUSD。如何跳过第一个?
-
result=1&size=0 EURUSD 是 csv 的第一部分,因此它显示为第一列名称。请分享您尝试轻松调试的代码
标签: php html csv html-table