转义字符串时出错

I have an error when I escaping string

本文关键字:出错 字符串 转义字符 转义      更新时间:2023-09-26

我正试图在面板中的php代码中编写一个字符串。这在下给出

<?php
$str.="$('#layerList ul').prepend('<li data-refInd='''+arr_ind+'''><img src='''tmp_card_imgs/''+temp".$k.".name+''' width='20px' /> Layer '+temp".$k.".zindex+':Image <span class=''del_layer'' style=''cursor:pointer;float:right;display:block;''>X</span></li>');";
?>

但控制台中显示的错误在下给出

SyntaxError: missing ) after argument list
[Break On This Error]   
...data-refInd='''+arr_ind+'''><img src='''tmp_card_imgs/''+temp0.name+''' width='2...
-----------------------------------------|
editor.php?id=129 (line 837, col 60)

我的字符串转义有什么问题?

这里有问题:

<img src='''tmp_card_imgs/''+temp0.name+''' 
//        ^               ^

应该是

<img src=''tmp_card_imgs/'+temp0.name+''' 

你还没逃脱

width='20px'

应该是

width=''20px''

最终结果:

<?php
    $str.="$('#layerList ul').prepend('<li data-refInd='''+arr_ind+'''><img src=''tmp_card_imgs/'+temp".$k.".name+''' width=''20px'' /> Layer '+temp".$k.".zindex+':Image <span class=''del_layer'' style=''cursor:pointer;float:right;display:block;''>X</span></li>');";
?>
$str .= "$('#layerList ul').prepend('<li data-refInd='"'+arr_ind+''"><img src='"tmp_card_imgs/'+temp".$k.".name+''" width='20px' /> Layer '+temp".$k.".zindex+':Image <span class='"del_layer'" style='"cursor:pointer;float:right;display:block;'">X</span></li>');";