PHP基本不了解一些代码?

时间:2014-02-02 13:15:32

标签: php

我正在努力理解这段代码的工作原理。当我们用值5调用函数时,c的值变为5.现在5 + 25 = 30。我不明白的是$_GET['c']的值如何等于25,它应该是5。

因此,我的答案是5 + 25 - 5 - 10 = 15。

<?php
   function process($c, $d = 25){
     global $e;
     $retval = $c + $d - $_GET['c'] - $e;
     return $retval;
   }

   $e = 10;
   echo process(5);
?>

1 个答案:

答案 0 :(得分:0)

它的变量应该是另一个值,也许你使用“全局”,你可能会从另一个位置获取值。

尝试显示变量:

<?php
   function process($c, $d = 25){
     global $e;

     echo '$e: ', $e , '<br>';
     echo '$c: ', $c , '<br>';
     echo '$d: ', $d , '<br>';
     echo '$_GET['c']: ', $_GET['c'] , '<br>';

     $retval = $c + $d - $_GET['c'] - $e;

     echo $c ,' + ' , $d , ' - ' , $_GET['c'] , ' - ' , $e , ' = ' , $retval , '<hr>';

     return $retval;
   }

   $e = 10;
   echo process(5);
?>

所以你可能会发现变量问题。

在某些情况下,您可以在类中使用静态函数(面向php对象)