【 以下文字转载自 PHP 讨论区 】
发信人: textilerolle (michael), 信区: PHP
标 题: 看细说php,双引号单引号真是头痛
发信站: 水木社区 (Tue Oct 12 17:28:30 2021), 站内
字符串连接代码只要有一个出错,就导致整个代码看不懂
就比如:
$out.='<select name="year" onchange="window.location=\''.$url.'?year=\'+this.options[selectedIndex].value+\'&month='.$this->month.'\'">'
我看了半天,看不懂,感觉应该是location后边的\''这里有问题.
我自己一步步解析如下
首先去掉首尾单引号<select name="year" onchange="window.location=\''.$url.'?year=\'+this.options[selectedIndex].value+\'&month='.$this->month.'\'">
然后主要的问题在onchange=后边这里如下:
window.location=\''.$url.'?year=\'+this.options[selectedIndex].value+\'&month='.$this->month.'\'
再去掉=前边\''.$url.'?year=\'+this.options[selectedIndex].value+\'&month='.$this->month.'\'
上边首尾两个\'应该是转义',但是这样的话.问题就来了:
1:url前边的哪个单引号就不知道干嘛用了
2:year=后边的'是干嘛用的,这个市php的参数,直接用+后边的代码就行了,为啥要加个'
看不懂,有人帮忙解析一下不?
--
修改:textilerolle FROM 110.182.133.*
FROM 110.182.133.*