我的基本网址是http://localhost/test/
。我有一个名为Click me
的锚标记。我查看了视图源它显示如
`<a href='http://localhost/test/abdah.0`p)dp'>Click me</a>`
它应该显示为
`<a href='http://localhost/test/index.php/example/index/4&action=print'>Click me</a>`
我尝试了代码,但它无法正常工作。
<?php
$session_stud_id=4;
$bg_url='index.php/example/index/'.$session_stud_id;
$action_url="action=print";
echo $main_url=$bg_url&$action_url;//output abdah.0`p)dp
?>
<a href="<?php echo base_url($main_url);?>" >Click me</a>
我得到的东西有点像abdah.0
p)dp`。
你能帮我解决这个问题吗?
答案 0 :(得分:2)
您必须使用.
连接多个字符串
将您的main_url更改为:
echo $main_url=$bg_url."&".$action_url;
答案 1 :(得分:1)
你没有在这一行正确连接字符串
$main_url=$bg_url&$action_url;
应该是这样的
$main_url=$bg_url . "&" . $action_url;
答案 2 :(得分:1)
&
是PHP bitwise AND operator。根据该手册页,当您将其与字符串结合使用时:
如果两个操作数都为&amp;,|和^运算符是字符串,然后将对组成字符串的字符的ASCII值执行操作,结果将是一个字符串。在所有其他情况下,两个操作数都将转换为整数,结果将是一个整数。
所以你的两个字符串index.php/example/index/
和action=print
就像这样逐字逐句地被评价。对于第一个字符:
Char Ascii Binary
a 97 1100001
i 105 1101001
这些二进制值的评价如下:
1100001
1101001
& 1100001
在这种情况下,我们最终返回值97,它等同于a
,它显示在最终字符串中。对于较短字符串长度之后的值,将对零值进行求值,这样就不会添加任何字符。
您可能想要使用
$main_url = "{$bg_url}?{$action_url}";
echo $main_url;
(其他答案提到只是与&
连接,但由于您的$bg_url
没有现有的查询字符串,我认为您可能需要使用?
)