要在邮件正文PHP中添加图像吗
这是我用来在邮件正文中发送图像的代码要在邮件正文PHP中添加图像吗,php,email,yii,Php,Email,Yii,这是我用来在邮件正文中发送图像的代码 $message2 .= '<div style = "color: white; padding: 5px;"></div></div>'; # Open a file $url = realpath(Yii::app()->theme->basePath) . "/images/Male-icon.png"; $file = fopen($url, "r"); if
$message2 .= '<div style = "color: white; padding: 5px;"></div></div>';
# Open a file
$url = realpath(Yii::app()->theme->basePath) . "/images/Male-icon.png";
$file = fopen($url, "r");
if ($file == false) {
echo "Error in opening file";
exit();
}
# Read the file into a variable
$size = filesize($url);
$content = fread($file, $size);
# encode the data for safe transit
# and insert \r\n after every 76 chars.
$encoded_content = chunk_split(base64_encode($content));
# Get a random 32 bit number using time() as seed.
$num = md5(time());
# Define the main headers.
$header = "From:xyz@somedomain.com\r\n";
$header .= "MIME-Version: 1.0\r\n";
$header .= "Content-Type: multipart/mixed; ";
$header .= "boundary=$num\r\n";
$header .= "--$num\r\n";
# Define the message section
$header .= "Content-Type: text/html\r\n";
$header .= "Content-Transfer-Encoding:8bit\r\n\n";
$header .= "$message2\r\n";
$header .= "--$num\r\n";
# Define the attachment section
//$header .= "Content-Type: multipart/mixed; ";
$header .= "Content-Type: image/jpeg; ";
$header .= "name=\"Male-icon.png\"\r\n";
$header .= "Content-Transfer-Encoding:base64\r\n";
$header .= "Content-Disposition:attachment; ";
$header .= "filename=\Male-icon.png\"\r\n\n";
$header .= "$encoded_content\r\n";
$header .= "--$num--";
# Send email now
$retval = mail($to, $subject, "", $header);
if ($retval == true) {
echo "Message sent successfully...";
} else {
echo "Message could not be sent...";
}
$message2.='';
#打开一个文件
$url=realpath(Yii::app()->theme->basePath)。“/images/Male icon.png”;
$file=fopen($url,“r”);
如果($file==false){
echo“打开文件时出错”;
退出();
}
#将文件读入变量
$size=filesize($url);
$content=fread($file,$size);
#对数据进行编码以确保安全传输
#并在每76个字符后插入\r\n。
$encoded_content=块分割(base64_encode($content));
#使用time()作为种子获取随机32位数字。
$num=md5(time());
#定义主标题。
$header=“From:xyz@somedomain.com\r\n“;
$header.=“MIME版本:1.0\r\n”;
$header.=“内容类型:多部分/混合;”;
$header.=“边界=$num\r\n”;
$header.=“--$num\r\n”;
#定义消息部分
$header.=“内容类型:text/html\r\n”;
$header.=“内容传输编码:8位\r\n\n”;
$header.=“$message2\r\n”;
$header.=“--$num\r\n”;
#定义附件部分
//$header.=“内容类型:多部分/混合;”;
$header.=“内容类型:图像/jpeg;”;
$header.=“名称=\”男性图标.png\“\r\n”;
$header.=“内容传输编码:base64\r\n”;
$header.=“内容处置:附件;”;
$header.=“filename=\Male icon.png\”\r\n\n”;
$header.=“$encoded\u content\r\n”;
$header.=“--$num--”;
#立即发送电子邮件
$retval=mail($to,$subject,“,$header);
如果($retval==true){
回显“消息已成功发送…”;
}否则{
回显“无法发送消息…”;
}
我正在使用简单的邮件功能在邮件正文中发送图像。这有助于解决我的问题。在gmail中,它自动添加了下划线,图像无法查看。请指导我如何在邮件正文中发送图像。为什么要使用编码内容?只需使用img标记的src属性中的图像完整url。例如,我也在使用此功能,但不起作用$message2.='theme->basePath)。'/images/Male-icon.png“width=“30px;”“/>iqloads.com”;不要使用realpath,使用完整的url,如。。。。。