繁体   English   中英

在PHP字符串中转义“ $ _”

[英]escaping “$_” in php string

我试图将VCARD信息作为长文本字符串加载到数据库字段中。 在某些情况下,vcard信息附带一个以“ $ _”结尾的参数(请参阅倒数第二行)。 我无法使PHP将其作为字符串转义到变量中以进行转义。

`$vcard = mysqli_real_escape_string($connection, "BEGIN:VCARD
    VERSION:3.0
    FN:Your Name
   N:Name;Your;;;
   EMAIL;TYPE=INTERNET;TYPE=WORK:your@email.here
   TEL;TYPE=CELL:
   ADR;TYPE=HOME:;;I am here;;;;
   ORG:Your organization
   TITLE:Owner and Co-Creator
   item1.URL:https\://yoursite.com
   item1.X-ABLabel:_$!<HomePage>!$_
          END:VCARD");`

我收到“通知:未定义的变量:_在C:”错误。 我可以手动转义第二个$,但是这样做失败了。 我尝试了metaquote(),这也不起作用。 关于如何避免此错误的任何帮助?

用单引号替换双引号。 双引号内的变量将插值,而单引号内的变量则不会插值。

$vcard = mysqli_real_escape_string($connection, 'BEGIN:VCARD
    VERSION:3.0
    FN:Your Name
   N:Name;Your;;;
   EMAIL;TYPE=INTERNET;TYPE=WORK:your@email.here
   TEL;TYPE=CELL:
   ADR;TYPE=HOME:;;I am here;;;;
   ORG:Your organization
   TITLE:Owner and Co-Creator
   item1.URL:https\://yoursite.com
   item1.X-ABLabel:_$!<HomePage>!$_
          END:VCARD');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM