Rumah php教程 php手册 php中static静态变量的使用方法详解_php基础

php中static静态变量的使用方法详解_php基础

May 17, 2016 am 09:01 AM
static pembolehubah statik

看看下面的实例:

复制代码 代码如下:

function Test()
{
$w3sky = 0;
echo $w3sky;
$w3sky++;
}
?>

本函数每次调用时都会将 $w3sky 的值设为 0 并输出 "0"。将变量加一的 $w3sky++ 没有其到效果,因为一旦退出本函数则变量 $w3sky 就不存在了。要写一个不会丢失本次计数值的计数函数,要将变量 $w3sky 定义为静态(static)的:
如下:
复制代码 代码如下:

function Test()
{
static $w3sky = 0;
echo $w3sky;
$w3sky++;
}
?>

本函数每调用Test()都会输出 $w3sky 的值并加一。
静态变量也提供了一种处理递归函数的方法。递归函数是一种自己调用自己的方法。写递归函数时要小心,因为可能会无穷递归下去,没有出口.务必确保 有方法来中止递归。以下这个简单的函数递归计数到 10,使用静态变量 $count 来判断何时停止:
静态变量与递归函数的例子:
复制代码 代码如下:

function Test()
{
static $count = 0;
$count++;
echo $count;
if ($count Test();
}
$count--;
}
?>

注: 静态变量可以按照上面的例子声明。如果在声明中用表达式的结果对其赋值会导致解析错误。
声明静态变量例子:
复制代码 代码如下:

function foo(){
static $int = 0;// correct
static $int = 1+2; // wrong (as it is an expression)
static $int = sqrt(121); // wrong (as it is an expression too)
$int++;
echo $int;
}
?>
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah mekanisme pembolehubah statik bagi fungsi PHP? Apakah mekanisme pembolehubah statik bagi fungsi PHP? Apr 10, 2024 pm 09:09 PM

Apakah mekanisme pembolehubah statik bagi fungsi PHP?

Apakah fungsi dan penggunaan statik dalam bahasa C Apakah fungsi dan penggunaan statik dalam bahasa C Jan 31, 2024 pm 01:59 PM

Apakah fungsi dan penggunaan statik dalam bahasa C

Cara menggunakan statik, ini, super, dan akhir di Jawa Cara menggunakan statik, ini, super, dan akhir di Jawa Apr 18, 2023 pm 03:40 PM

Cara menggunakan statik, ini, super, dan akhir di Jawa

Peranan statik Peranan statik Jan 24, 2024 pm 04:08 PM

Peranan statik

Senario aplikasi praktikal dan kemahiran penggunaan kata kunci statik dalam bahasa C Senario aplikasi praktikal dan kemahiran penggunaan kata kunci statik dalam bahasa C Feb 21, 2024 pm 07:21 PM

Senario aplikasi praktikal dan kemahiran penggunaan kata kunci statik dalam bahasa C

Apakah kaedah statik php Apakah kaedah statik php Oct 31, 2022 am 09:40 AM

Apakah kaedah statik php

Cara menggunakan pengubah suai Java abstrak, statik dan muktamad Cara menggunakan pengubah suai Java abstrak, statik dan muktamad Apr 26, 2023 am 09:46 AM

Cara menggunakan pengubah suai Java abstrak, statik dan muktamad

Cara Springboot membaca fail pro tersuai dan menyuntik pembolehubah statik Cara Springboot membaca fail pro tersuai dan menyuntik pembolehubah statik May 30, 2023 am 09:07 AM

Cara Springboot membaca fail pro tersuai dan menyuntik pembolehubah statik

See all articles