我已经得到了这个很好的脚本,并提供了很多帮助:
if (isset($_POST['talente'])) { // array(2) { [0]=> string(1) "2" [1]=> string(1) "3" }
$talente = $_POST['talente'];
$myFile = fopen("talente.csv", "r"); // e.f.: name;1;-;stuff
$csv = [];
while ($data = fgetcsv($myFile, 1000, ";")) {
$csv[] = $data;
}
fclose($myFile);
$i = 0;
$talentline = array_filter($csv, function($i) use ($talente) {
return in_array($i, $talente--);
}, ARRAY_FILTER_USE_KEY);
$talentline = array_filter($talentline);
$talentline = array_values($talentline);
}
$talentline[0][0] = isset($talentline[0][0]) ? $talentline[0][0] : "";
...
这在我的电脑上很好用于localhost。但在我的主机上传后没有任何反应。打印并倾倒一段时间后,我注意到,每个变量都有预期值/ s但是$ talentline。当我在它周围设置var_dump时,它会像我在PC上预期的那样给我一个多维数组。但在我的Hoster上只有NULL。我无法找到原因。