php 发送图片,利用PHP输入流发送图片

前面我们详细地分析了 php://input 的一些情况,那么这里简单地写一个例子感受一下它的用法吧。比如用 PHP 的输入流传输一张图片什么的。

$data = file_get_contents('wb.png');

$http_entity_body = $data;

$http_entity_type = 'application/x-www-form-urlencoded';

$http_entity_length = strlen($http_entity_body);

$host = '127.0.0.1';

$port = 80;

$path = '/getimg.php';

$fp = fsockopen($host, $port, $error_no, $error_desc, 30);

if ($fp)

{

fputs($fp, "POST {$path} HTTP/1.1\r\n");

fputs($fp, "Host: {$host}\r\n");

fputs($fp, "Content-Type: {$http_entity_type}\r\n");

fputs($fp, "Content-Length: {$http_entity_length}\r\n");

fputs($fp, "Connection: close\r\n\r\n");

fputs($fp, $http_entity_body . "\r\n\r\n");

while (!feof($fp))

{

$d .= fgets($fp, 4096);

}

fclose($fp);

echo $d;

}

服务器端接收的代码 getimg.php:

/**

*Recieve image data

**/

error_reporting(E_ALL);

function get_contents()

{

$xmlstr= file_get_contents("php://input");

$filename=time().'.png';

if(file_put_contents($filename,$xmlstr))

{

echo 'success';

}

else

{

echo 'failed';

}

}

get_contents();

大概就这样,其实挺简单的。不过要注意在enctype="multipart/form-data"情况下,是无法接收到流的,其他情况下都可以。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是一个 PHP 主页面代码示例,可以让用户输入内容并将其发送到指定邮箱: ```php <!DOCTYPE html> <html> <head> <title>发送邮件</title> </head> <body> <h1>发送邮件</h1> <form method="post"> <label for="email">收件人邮箱:</label> <input type="email" name="email" required><br><br> <label for="subject">邮件主题:</label> <input type="text" name="subject" required><br><br> <label for="message">邮件内容:</label> <textarea name="message" required></textarea><br><br> <input type="submit" name="send" value="发送邮件"> </form> <?php if(isset($_POST['send'])){ $to = $_POST['email']; $subject = $_POST['subject']; $message = $_POST['message']; $headers = "From: yourname@yourdomain.com\r\n"; $headers .= "Content-Type: text/html; charset=UTF-8\r\n"; if(mail($to, $subject, $message, $headers)){ echo "<p>邮件发送成功!</p>"; }else{ echo "<p>邮件发送失败!</p>"; } } ?> </body> </html> ``` 在这个示例中,我们使用了一个 HTML 表单让用户输入收件人邮箱、邮件主题和邮件内容,并使用 PHP 中的 `mail()` 函数将邮件发送出去。注意,在实际使用时,你需要将 `From:` 邮箱地址修改为你自己的邮箱地址。 当用户点击表单中的“发送邮件”按钮时,将会触发 PHP 中的 `isset($_POST['send'])` 代码块,该代码块会获取表单中输入的数据并使用 `mail()` 函数将邮件发送出去。如果邮件发送成功,将会输出“邮件发送成功!”,否则将会输出“邮件发送失败!”。 你可以将这个代码保存为一个 `.php` 文件并将其部署到你的 Web 服务器上,然后访问该页面即可看到效果。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值