PHP函数有点奇怪

时间:2014-01-08 13:14:16

标签: php function

我是这样编码的。

<?php 
function get_argument($arg){
    return $arg;
}
echo print get_argument(33);
?>

保存为php扩展文件。 并在chrome中执行它。我希望它打印出数字&#33; 33&#39;

但它告诉我&#39; 331&#39;

对我来说有点奇怪。所以我改变了值34而不是33。

打印出来&#39; 341&#39;

所以我再次测试了它。

再插入两个这样的代码。

echo get_argument(33);
print get_argument(33);

他们两个都打印出相同的号码,即&#33; 33&#39;

有什么区别?是什么导致了一点,但结果很大?

6 个答案:

答案 0 :(得分:8)

因为print已经返回,请参阅PHP文档:http://php.net/print

答案 1 :(得分:6)

因为当您编写echo print get_argument(33);时,它会首先执行打印,因此打印将写入33。

但是,打印件将返回1,然后由echo

打印

答案 2 :(得分:3)

键入

echo print get_argument(33);

首先将get_argument(33)的结果打印为33,然后将print get_argument(33)的结果回显为真,即1。

答案 3 :(得分:1)

这是因为您同时使用回声和打印,只选择一个。

<?php 
  function get_argument($arg){
   return $arg;
  }
   print get_argument(33);
 ?>

答案 4 :(得分:1)

在这个命令中回显print get_argument(33):你先输出2个是: print get_argument(33)

,第二是回声;

echo将返回打印功能的结果; 1表示打印功能的结果。

答案 5 :(得分:-2)

我不确定为什么会发生,但尝试返回整数

function get_argument($arg){
    return intval($arg);
}