关于如何从单独的文件中的另一个类返回特定值的PHP问题。所以我创建了一个上传器类来处理和存储用户上传的文件。但是尝试将点连接回原始请求,如果为了让我们说一个特定的页面 - 我在另一个文件中设置值之后如何传回特定值...下面的代码示例。
感谢Citti
//file 1 //store page request
public function store()
{
//pass the uploaded file to be uploaded and stored
$this->uploader->upload(RequestFile::file('assetfile'));
$page = new Page;
$page->user_id = $asset->user()->id;
$page->assetfile = $file->user_id; <--- ? see below
$page->save();
}
//file 2 //store physical file and create record in DB
class Uploader {
public function upload($file)
{
$extension = $file->getClientOriginalExtension();
$string = str_random(30);
$uploadName = $string . '.' . $extension;
$destinationPath = storage_path() . '/app/uploads/' . Request::user()->id;
$file->move($destinationPath, $uploadName);
$file = new File;
$file->user_id = $asset->user()->id;
$file->assetfile = $uploadId;
$file->save();
$return $file->user_id; ?!?
答案 0 :(得分:0)
要从函数返回值,可以使用“返回值”,只需将其存储到变量或输出即可。类似的东西:
public function store() {
$fileId = $this->uploader->upload(RequestFile::file('assetfile'));
$page = new Page;
$page->user_id = $asset->user()->id;
$page->assetfile = $fileId;
$page->save();
}
//file 2 //store physical file and create record in DB
class Uploader {
public function upload($file) {
$extension = $file->getClientOriginalExtension();
$string = str_random(30);
$uploadName = $string . '.' . $extension;
$destinationPath = storage_path() . '/app/uploads/' . Request::user()->id;
$file->move($destinationPath, $uploadName);
$file = new File;
$file->user_id = $asset->user()->id;
$file->assetfile = $uploadId;
$file->save();
return $file->user_id;
}
}
答案 1 :(得分:0)
您可以尝试的是会话变量吗?
确保通过以下方式启动文件1和文件2上的会话:
session_start();
现在,在您的上传功能中,您可以声明会话变量
$_SESSION['specificValue'] = $valueSetInUpload;
现在,回到第一个文件,您可以访问商店功能中的变量
$valueSetInUpload = $_SESSION['specificValue'];
我相信这就是你所要求的,但我可能是错的。