我非常想知道在PHP上传文件时如何获取完整的文件路径?
这是我的问题...
我正在使用PHP导入csv文件。上传文件不是问题,但用于导入csv文件的函数fgetcsv()需要fopen。fopen让我头疼,因为它需要精确的文件路径,这意味着文件应该与php文件在同一个目录中。如果用户从不同的目录获取文件怎么办。
这是我的代码:
index.php
:
<form action="csv_to_database.php" method="POST" enctype="multipart/form-data">
<input type="file" name="csv_file" />
<input type="submit" name="upload" value="Upload" />
</form>
csv_import.php
:
<?php
if ($_FILES['csv_file']['error'] > 0) {
echo "Error: " . $_FILES['csv_file']['error'] . "<br />";
}else{
if (($handle = fopen($_FILES['csv_file']['name'], "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
for ($c=0; $c < count($data) ; $c++) {
echo $data[$c] . " ";
}
echo "<br />";
}
fclose($handle);
}
}
?>
fopen
只能获取由变量 $_FILES['csv_file']['name']
传递的文件名。我曾试图在互联网上查找任何可以获取 $_FILES 的完整文件路径的函数,但是没有找到。
我对 Web 开发非常陌生,请耐心等待。请尽可能简单地回答... 请帮帮我...
fopen
可以处理这些信息。请参考http://www.php.net/manual/en/features.file-upload.post-method.php。 - vindia