PHP打印出错了

时间:2015-11-30 17:55:38

标签: php

我有以下php行:

<?php echo "?page=" . $selectedImage + 1 ."&pid=5"."&type=". $type . "&special=" . $special; ?>

上面的一行是在

,生成的链接是:

XXXXXX.com/1&pid=5&type=AD23&special=first

并且它不打印“?page”,任何想法为什么?

提前致谢!

2 个答案:

答案 0 :(得分:3)

尝试添加括号

<?php echo "?page=" . ($selectedImage + 1) ."&pid=5"."&type=". $type . "&special=" . $special; ?>

答案 1 :(得分:1)

奇怪的行为...... :( 但要修复它,试试这个:

<?php echo "?page=" . (string)($selectedImage + 1) ."&pid=5" . "&type=" . $type . "&special=" . $special; ?>

格式化字符串的最佳做法是使用sprintf()

sprintf("?page=%d&pid=5&type=%s&special=%s", ($selectedImage + 1), $type, $special);

修改

Mystery Resolved 
/*
 PHP will try to create number by concatening the string '20' and the integer
 $i, so the operation will result to the integer 205
 after that, make addition operation => 210 
*/
$i = 5;
echo '20' . $i + 5;  

在您的案件中发生的事情类似于:)