Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/262.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php CSV文件构建一个select元素_Php_Html_Csv - Fatal编程技术网

Php CSV文件构建一个select元素

Php CSV文件构建一个select元素,php,html,csv,Php,Html,Csv,是否可以从CSV文件创建HTML中的选择菜单?我不知道该怎么办 所以我有一个CSV,它有两列和多个值,有没有任何方法可以通过PHP循环CSV文件并输出HTML,到目前为止我已经尝试过了 $row = 1; if (($handle = fopen($_SERVER['DOCUMENT_ROOT']."/service/regions.csv", "r")) !== FALSE) { while (($data = fgetcsv($handle, 133, ",")) !

是否可以从CSV文件创建HTML中的选择菜单?我不知道该怎么办

所以我有一个CSV,它有两列和多个值,有没有任何方法可以通过PHP循环CSV文件并输出HTML,到目前为止我已经尝试过了

$row = 1;
    if (($handle = fopen($_SERVER['DOCUMENT_ROOT']."/service/regions.csv", "r")) !== FALSE) {
        while (($data = fgetcsv($handle, 133, ",")) !== FALSE) {
            $num = count($data);
            $row++;
            for ($c=0; $c < $num; $c++) {
                echo "<option value='".$data[$c]."'>".$data[$c]."</option>";
            }
        }
        fclose($handle);
    }
$row=1;
if($handle=fopen($\u SERVER['DOCUMENT\u ROOT'].“/service/regions.csv”,“r”)!==FALSE){
while(($data=fgetcsv($handle,133,“,”)!==FALSE){
$num=计数($data);
$row++;
对于($c=0;$c<$num;$c++){
回显“$data[$c]”;
}
}
fclose($handle);
}
但是,这会产生以下输出

 <select>
    <option value='AB'>AB</option>
    <option value='Aberdeenshire'>Aberdeenshire</option>
    <option value='AG'>AG</option>
    <option value='Angus'>Angus</option>
    <option value='AM'>AM</option>
    <option value='Armagh'>Armagh</option>
 </select>

AB
阿伯丁郡
银
安古斯
是
阿尔马
我想要的是得到这样的输出

<option value="AB">Aberdeenshire</option>
阿伯丁郡

哪里出错了?

$data[$c][0]
将返回第一列,
$data[$c][1]
将返回第二列,依此类推。因此,只需将
$data[$c]
替换为适合您的列的正确变量。

您所需要的就是

$handle = fopen(__DIR__ . "/service/regions.csv", "r");
echo "<select>";
if ($handle !== FALSE) {
    $row = 0;
    while ( ($data = fgetcsv($handle, 133, ",")) !== FALSE ) {
        printf('<option value="%s">%s</option>', $data[0], $data[1]);
    }
    fclose($handle);
}
echo "</select>";
$handle=fopen(_DIR__.”/service/regions.csv,“r”);
回声“;
如果($handle!==FALSE){
$row=0;
while(($data=fgetcsv($handle,133,“,”)!==FALSE){
printf('%s',$data[0],$data[1]);
}
fclose($handle);
}
回声“;
输出

<select>
    <option value="AB">Aberdeenshire</option>
    <option value="AG">Angus</option>
    <option value="AM">Armagh</option>
</select>

阿伯丁郡
安古斯
阿尔马
“AB”、“阿伯丁郡”、“AG”、“Agath”等