我是php的新手。这有可能吗?脚本角色是在另一行中找到匹配但不在同一列上...
.csv文件
**first row** **second row** **third row**
This is for NNMM NN/MM@000-45NNMM;1 2001
AA/BB@000-45AABB;2 ----- 2002
NN/MM@000-45NNMM;2 ----- 2003
This is for XXYY XX/YY@000-45XXYY;1 2004
LL/QQ@000-45LLQQ;2 ----- 2005
WW/KK@000-45WWKK;2 ----- 2006
CC/DD@000-45CCDD;2 ----- 2005
PP/SS@000-45PPSS;2 ----- 2006
This is for AABB AA/BB@000-45AABB;1 2007
XX/YY@000-45XXYY;2 ----- 2008
This is for PPSS PP/SS@000-45PPSS;1 2009
This is for CCDD CC/DD@000-45CCDD;1 2010
在第一行:字符串中的最后一个字符为5个字段为“ 2 ”。(即AA / BB @ 000-45AABB; 2)
在第二行:字符串中的最后一个字符为5个字段为“ 1 ”。(即AA / BB @ 000-45AABB; 1)
现在我想做一个匹配的脚本,其中第一行在2ndrow中找到匹配..并显示找到匹配的第一行的数据...希望它有意义......
期望的输出
This is for NNMM NN/MM@000-45NNMM;1 2001
This is for XXYY XX/YY@000-45XXYY;1 2004
This is for AABB AA/BB@000-45AABB;1 2007
This is for PPSS PP/SS@000-45PPSS;1 2009
This is for CCDD CC/DD@000-45CCDD;1 2010
我已经启动了一个脚本,但仍坚持使用逻辑......
$file = fopen('sample.csv', 'r');
echo "<table style='border: 2px solid black; text-align:left'>";
while (($line = fgetcsv($file)) !== FALSE) {
list( $row1, $row2, $row3) = $line;
echo "<tr>";
echo "<td>$row1</td>";
echo"<td>$row2</td>";
echo "<td>$row3</td>";
echo "</tr>";
}
echo "</table>";
答案 0 :(得分:0)
使用do while()而不是抱歉无法为您编写代码
你必须使用if语句if($ row1 == $ row1){then do this}