簡體   English   中英

eval PHP中的雙引號問題

[英]Double quotes issue in eval PHP

這是我的代碼,出現這樣的錯誤。

解析錯誤:語法錯誤,意外的“”;“ (T_ENCAPSED_AND_WHITESPACE)在C:\\ wamp64 \\ www \\ PHPQC \\ php \\ base \\ meditabmssql \\ med_pa​​ge.php(1369)中:eval()第1行的代碼。

碼:

<?php
$string = 'cup';
$name = 'coffee';
$str = 'This is a $string wi"th my $name in it.';
eval("\$str = \"$str\";");
echo $str;
?>

這是參考( http://php.net/manual/en/function.eval.php

您應該轉義一些字符:

<?php
$string = 'cup'; 
$name = 'coffee'; 
$str = 'This is a $string wi"th my $name in it.'; 
eval("\$str = \"\$str\";"); 
echo $str;
?>

您需要轉義$str內的引號。 您可以為此使用addslashes()

<?php
$string = 'cup'; 
$name = 'coffee'; 
$str = 'This is a $string wi"th my $name in it.'; 
$strslash = addslashes($str);
eval("\$str = \"$strslash\";"); 
echo $str;
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM