PHP 从文件内容上传到 FTP

标签 php mysql file-upload ftp

虽然您可以使用 ftp_put 将文件上传到 FTP 服务器,但这需要您想要上传的文件。如果文件的内容位于 MySQL 字段内怎么办?

如何将 MySQL BLOB 字段中的文件上传到 FTP 服务器(因此从包含文件数据的字符串而不是文件路径上传文件)?我正在寻找本地解决方案,而不是解决方法。这是因为将数据写入文件、上传文件和删除文件会花费太长时间。

编辑以澄清OP的问题:我有一个字符串变量,我想将其上传到FTP服务器。快速但肮脏的方法是从我的字符串变量创建一个物理临时文件,将该文件上传到 FTP 服务器,然后删除该临时文件。但是有没有办法将字符串变量直接上传到 FTP 服务器,而不必从中创建临时文件?

最佳答案

好的,我找到了解决方案。

$fileContent = 'My file contents here';
$contentstream = fopen('data://text/plain,' . $fileContent, 'r');
ftp_fput($myConnection, '/path/to/my/folder/file.txt', $contentStream, FTP_BINARY);

关于PHP 从文件内容上传到 FTP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21824484/

相关文章:

php - 将重命名的文件名上传到数据库

php - 如何通过url向mysql中添加数据

php - 如何在php中使用for循环同时存储多行?

mysql - 如何找出 MySQL 中的默认字符集/排序规则

javascript - 使用 ajax 将加载的数据插入到页面源中,以将它们插入到 mysql 中

mysql - SQL 错误文本给我一个与实际值不同的值

php - 当用户更改系统时间时,jquery 倒计时会发生变化

php - CakePHP 添加异步到脚本标签

java - 如何使用 FileUploadPlugin 在 XWiki 中创建带有进度条的自定义 FileUpload

java - 验证上传到服务器的文件