[英]rawurlencode() and urlencode() not working in CodeIgniter
我正在尝试将字符串编码为安全URL以用于通用目的,并且在使用CodeIgniter时rawurlencode()和urlencode()都不起作用。 我已经使用过它们,并且使用直接的PHP可以很好地工作,但无论出于何种原因,它都不起作用。 我无法找到任何其他有此问题的人,因此没有解决方案。
码:
<a href="/search/degree/<?=rawurlencode($row->degree)?>" class="element_link"><?=$row->degree?></a>
它只是作为纯文本传递,空格未转义和一切。
我期待着我能够得到的结果:
<?php echo rawurlencode('http://kchason.com'); ?>
优点:http%3A%2F%2Fkchason.com
但是: <a href="/search/degree/<?=rawurlencode($row->degree)?>" class="element_link"><?=$row->degree?></a>
给我举个例子:'localhost / http://kchason.com',这显然是不安全的,不起作用。
我知道这是一个老问题。 但我正在处理同样的问题。 我所做的是:
编码
<?php echo urlencode(base64_encode('http://kchason.com')); ?>
解码
<?php echo urldecode(base64_decode('http://kchason.com')); ?>
您使用base64_encode
来删除任何会导致Codeigniter问题的URL部分,然后使用urlencode
编码any =
base64_encode
添加到其输出的末尾。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.