开发笔记(1)

PHP的单引号与双引号

服务端接收android手机端软件由用户输入的内容,阍将此内容通过邮件方式发送到用户输入的邮箱中。为了实现异步发送,增加服务端的响应时间,邮件发送是通过python脚本实现的。服务端在接收用户输入的内容时,要对接收的字符串做一些转换。即将换行转为<br>,空格转为&nbsp,还包括<和>两个符号。今天在处理回车转义时,犯一个低级错误。在此记录一下:

由于习惯,快速写了下面代码对换行符进行转义

$content=str_replace('\n','<br>',$content);
在接收的邮件中,当然没有仍何效果。为此问题还特意请同事debug一下手机端发送的内容值:

到构造content值时是可以查看到换行符为\n,到发送前查看的content值已经是换过行的文本。其实这就和html中的textarea中一样。在textarea中输入的内容换行,你是看不到\n这样的字符的。

在对其它需要转义的字符转换都OK,在将眼睛瞄向上行代码时,突然想到单引号的问题,于是将\n外改为双引号。成功对换行符的转换。

$content=str_replace("\n",'<br>',$content);

这个问题实质就是PHP中单引号与双引号的区别。所以在项目开发中,要认真严谨,往往出现的错误都是一些看似简单问题,这些问题由于不易发现,很难发觉。

python发送邮件内容支持html

text_msg = email.MIMEText.MIMEText('wwaaa<br>bbb',_charset="utf-8")
main_msg.attach(text_msg)
以上面这种方式发送邮件时,会对html字符自动转义,即对<转为&lt; >转为&gt;
如果要通过html方式发送,在构造内容时用以下方案

# -*- coding: utf-8 -*-
import smtplib
import email.MIMEMultipart# import MIMEMultipart
import email.MIMEText# import MIMEText
import email.MIMEBase# import MIMEBase
import os.path
import sys
from email.header import Header
import mimetypes
import email.MIMEImage# import MIMEImage
#....
text_msg = email.MIMEText.MIMEText('wwaaa<br>bbb','html',_charset="utf-8")
main_msg.attach(text_msg)
或者:

from email.mime.text import MIMEText
text_msg = MIMEText('aaa<br>bbb','html',_charset="utf-8")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值