将字符串作为文件发送

将字符串作为文件发送

本文介绍了使用 curl 和 php 将字符串作为文件发送的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道我可以使用这种语法通过 php、post 和 curl 发送文件.

I know I can use this syntaxt to send a file using php, post and curl.

$post = array(
    "file_box"=>"@/path/to/myfile.jpg",
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

如何获取一个字符串,构建一个临时文件并使用完全相同的语法发送它?

How can I take a string, build a temp file and send it using the exact same syntax ?

更新:我更喜欢使用 tmpfile() 或 php://memory 这样我就不必处理文件创建了.

Update:I would prefer using tmpfile() or php://memory so I don't have to handle file creation.

推荐答案

您可以在 tempnam 中创建一个文件您的临时目录:

You can create a file using tempnam in your temp directory:

$string = 'random string';

//Save string into temp file
$file = tempnam(sys_get_temp_dir(), 'POST');
file_put_contents($file, $string);

//Post file
$post = array(
    "file_box"=>'@'.$file,
);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

//do your cURL work here...

//Remove the file
unlink($file);

这篇关于使用 curl 和 php 将字符串作为文件发送的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-21 07:00