是否总是在使用PHP和CSV的while和for循环中将新数据添加到顶部位置(而不是其他数据的底部?)>

问题描述 投票:0回答:1
$folder="";
$filepath=$folder."file.txt";

$id         =   $_POST["id"];
$date       =   $_POST["date"];
$opponent   =   $_POST["opponent"];
$score      =   $_POST["score"];

$data=array($id,$date,$opponent,$score);

if(file_exists($filepath)){
    $f=fopen($filepath,"a+");
}else{  
    $f=fopen($filepath,"w");

    fputcsv($f,array("#","date","opponent","score"));
}

fputcsv($f,$data);

$data=csv_to_array($filepath,",");

$html="<table style='font-family:arial' tablespacing='0' border='0'>";

$index = count($data);

for($i=0; $i<$index; $i++) 
{
    if($i==0) {
           $html.="<tr style='font-weight: bold;color:red;background-color:#EEEEEE;'>
           <td width='60'>".$data[$i][0]."</td>
           <td width='100'>".$data[$i][1]."</td>
           <td width='240'>".$data[$i][2]."</td>
           <td width='60'>".$data[$i][3]."</td></tr>";
    }else{
        $sc_=explode("-",$data[$i][3]);

        if(count($sc_)!=2){
            $html.="<tr><td>".$data[$i][0]."</td>
            <td>".$data[$i][1]."</td>
            <td>".$data[$i][2]."</td>
            <td>".$data[$i][3]."</td></tr>";
        }else{
            if($sc_[0]>$sc_[1]){
                $html.="<tr><td>".$data[$i][0]."</td>
                <td>".$data[$i][1]."</td>
                <td>".$data[$i][2]."</td>
                 <td style='color:green;'>".$data[$i][3]."</td></tr>";
            }else if($sc_[0]<$sc_[1]){
                $html.="<tr><td>".$data[$i][0]."</td>
                <td>".$data[$i][1]."</td>
                <td>".$data[$i][2]."</td>
                <td style='color:red;'>".$data[$i][3]."</td></tr>";             
            }else{
                $html.="<tr><td>".$data[$i][0]."</td>
                <td>".$data[$i][1]."</td>
                <td>".$data[$i][2]."</td>
                 <td>".$data[$i][3]."</td></tr>";                               
            }
        }
    }
}
$html.="</table>";

echo $html;

function csv_to_array($filename='', $delimiter=';')
{
    if(!file_exists($filename) || !is_readable($filename))
        return FALSE;

    $header = NULL;
    $data = array();
    if (($handle = fopen($filename, 'r')) !== FALSE)
    {
        while (($row = fgetcsv($handle, 1000, $delimiter)) !== FALSE)
        {
            $data[] = $row;
        }
        fclose($handle);
    }
    return $data;
}

这是我从HTML表单获取数据的代码。问题是我想每次都在顶部位置添加数据,但总是将其添加到现有数据的底部。这段代码生成一个文本文件,在其中生成一个表,并将HTML表单中的数据添加到其中,我想每次都在顶部位置添加新数据。我怎样才能做到这一点?我已经尝试过数组排序技术,但是没有用。

$ folder =“”; $ filepath = $ folder。“ file.txt”; $ id = $ _POST [“ id”]; $ date = $ _POST [“ date”]; $ opponent = $ _POST [“ opponent”]; $ score = $ _POST [“ score”]; $ data = array($ id,$ date,$ ...

php html loops fgetcsv csvtoarray
1个回答
0
投票

我不确定您是否可以直接使用。

© www.soinside.com 2019 - 2024. All rights reserved.