我使用最古老的CodeIgniter版本在php5上编写了一些网站 我有配置:
$config['charset'] = 'windows-1251';
在某个地方,我有2个字符串值。
$this->uri->segment(2)
"{shortname}" . ".html"
我想要比较它们,如果它们是平等的话就做点什么 但我陷入了地狱......
现在,我在某些视图中有一些代码:
<?=(strcmp($this->uri->segment(2), "{shortname}" . ".html") == 0) ?
'test' :
'notest' ?><br/>
<?=mb_detect_encoding($this->uri->segment(2))?><br/>
<?=mb_detect_encoding("{shortname}" . ".html")?><br/>
<?=base64_encode(mb_convert_encoding($this->uri->segment(2), 'UTF-8'))?><br/>
<?=base64_encode(mb_convert_encoding("{shortname}" . ".html", 'UTF-8'))?><br/>
<?=$this->uri->segment(2)?><br/>
<?="{shortname}" . ".html"?><br/>
结果我有:
notest
ASCII
ASCII
cml6b2dyYWZpamEtdGlyYXpoaXJvdmFuaWUuaHRtbA==
e3Nob3J0bmFtZX0uaHRtbA==
rizografija-tirazhirovanie.html
rizografija-tirazhirovanie.html
我需要编码/解码/比较它是否有效?
答案 0 :(得分:3)
base64_decode("e3Nob3J0bmFtZX0uaHRtbA==")
= {shortname}.html
您的{shortname}
占位符未被替换。
我没有使用CodeIgniter,但您可能想使用{$shortname}
吗? (插入$shortname
变量值)
示例:
echo strcmp($this->uri->segment(2), "$shortname.html") == 0) ? 'test' : 'notest';