我正在开发一个WordPress插件,该插件需要上传excel文件,然后读取其中的数据。
我正在使用函数“ media_handle_upload”上载excel文件,然后,当我尝试使用SpreadsheetReader读取文件时,出现错误,表明该文件不可读。
这就是我正在编码的内容(我知道这是很糟糕的编码,但是我正在学习,这仅仅是为了使插件正常工作
if(isset($_FILES['test_upload_pdf'])){
$pdf = $_FILES['test_upload_pdf'];
// Use the wordpress function to upload
// test_upload_pdf corresponds to the position in the $_FILES array
// 0 means the content is not associated with any other posts
$uploaded=media_handle_upload('test_upload_pdf', 0);
// Error checking using WP functions
if(is_wp_error($uploaded)){
echo "Error uploading file: " . $uploaded->get_error_message();
}else{
echo $pdf."<br>";
$year = date('Y');
$month = date('m');
$targetPath = get_site_url()."/wp-content/uploads/".$year."/".$month."/".$_FILES['test_upload_pdf']['name'];
$targetPath2 = $_SERVER['DOCUMENT_ROOT']."/".$_SERVER["HTTP_HOST"]."/wp-content/uploads/".$year."/".$month."/".$_FILES['test_upload_pdf']['name'];
echo "<br>";
echo $targetPath2;
echo "<br>";
try
{
$Reader = new SpreadsheetReader($targetPath2);
}
catch (Exception $E)
{
echo $E -> getMessage();
}
我认为读者无法使用,因为尝试访问“ localhost”而不是物理文件夹,例如,$ targetPath之一显示以下内容:
http://127.0.0.1/wordpress/wp-content/uploads/2019/04/example.xlsx
所以...我的问题是,有一种方法可以访问媒体文件,以便可以用阅读器打开它们?
谢谢。
答案 0 :(得分:0)
也许这会有所帮助:
https://developer.wordpress.org/reference/functions/wp_upload_dir/
否则,请尝试对文件夹“ /your/path/to/upload/folder/file.extension”进行硬编码,并找出如何以编程方式创建此文件夹