我无法让 fgetcsv()
使用 $_POST
中的变量
( delimiter = (string)$_POST['delimiter'];)
如果我指定:$delimiter = "\t";
但当我使用:$delimiter = (string)$_POST['delimiter'];
HTML
<html> <body> <form enctype="multipart/form-data" action="upload.php" method="post"> 1) Select a delimiter.<br /> <input type="radio" name="delimiter" value="\t"checked="yes" /> Tab<br /> <input type="radio" name="delimiter" value=" "/> Space<br /> <input type="radio" name="delimiter" value=","/> Comma<br /> <input type="radio" name="delimiter" value=";"/> Semicolon<br /><br /> <input type="hidden" name="MAX_FILE_SIZE" value="1000"> 2) Send this file: <input name="userfile" type="file"><br /><br /> 3) <input type="submit" value="Send Info"> </form> <br /> </body> </html>
最佳答案
$_POST
已经是一个字符串。为什么$_POST
前面需要(string)
?只需将其删除即可。只要有:
delimiter = $_POST['delimiter'];
这应该有效。
此外,您不应该使用 fgetcsv
,因为您没有获取文件。您需要str_getcsv
.
str_getcsv($_POST["csv"], $_POST['delimiter']);
关于php - fgetcsv() 不适用于 $_POST 中的变量 $delimiter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14879142/