首頁 >後端開發 >php教程 >php靜態變數測試,初學php靜態變數錯誤解析

php靜態變數測試,初學php靜態變數錯誤解析

WBOY
WBOY原創
2016-07-25 08:52:35951瀏覽
  1. function myfunc()

  2. {
  3. static $int;

  4. $int=0;

  5. echo $int 1."
    ";

  6. }
  7. echo myfunc();
  8. echo myfunc();
  9. echo myfunc();

  10. ?>

复制代码

书中结果三个值分别为1,2,3 然而真实结果是无法运行,语法错误,后检查错误的原因在于$int 1."
"这句的写法,应该写成($int 1)."
",改过来后程序不报错了,但值却是1,1,1;其实这个也不难解释,$int虽然在不停的加1,但所得结果并没有再次赋给$int,谈什么$int会递增。

将代码修改为如下内容,才算正确了:

  1. function myfunc()
  2. {
  3. static $int=0; //php静态变量定义
  4. $int=$int 1;
  5. echo $int."
    ";
  6. }
  7. echo myfunc();
  8. echo myfunc();
  9. echo myfunc();
  10. ?>
复制代码

注意,static关键字必须和赋值在一起(php static静态变量修饰符的用法),如果按书中写在

staitc $int; $int=0;

错误,运行后的结果同样也是1,1,1



陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn