PHP:使用静态变量
生活随笔
收集整理的这篇文章主要介绍了
PHP:使用静态变量
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
在使用任何可能会被多次调用的函数时,我们都应考虑使用静态变量。静态变量让函数在多次被调用时记住变量的值,而这些变量并不是全局变量。
上一篇笔记说到了多维数组的排序需首先自定义排序函数。现在提出一个新的需求:统计递归的次数。那么我们就要使用静态变量了。
示例:使用静态变量
<?php //创建数组$students = array(256 => array('name' => 'John', 'grade' => 98),23 => array('name' => 'Tom', 'grade' => 85),9 => array('name' => 'Steve', 'grade' => 94),363 => array('name' => 'Robert', 'grade' => 83),69 => array('name' => 'Jack', 'grade' => 78));//按名字排序/*$count是一个静态变量它的初始值为1,它的赋值操作只在函数第一次被调用执行(因为它是一个静态变量),然后下一条语句打印递归次数, *最后$count的值加1*/function name_sort($x, $y) {static $count = 1;echo "<p>Iteration $count: {$x['name']} vs {$y['name']}</p>\n";$count++;return strcasecmp($x['name'], $y['name']);}//按成绩排序function grade_sort($x, $y) {static $count = 1;echo "<p>Iteration $count: {$x['grade']} vs {$y['grade']}</p>\n";$count++;return ($x['grade'] < $y['grade']);}uasort($students, 'name_sort');echo "<pre>".print_r($students,1)."<pre>";uasort($students, 'grade_sort');echo "<pre>".print_r($students,1)."<pre>"; ?>我们来看一下运行结果:
总结一下:在可能会被多次调用的函数中,我们应考虑使用静态变量,静态变量让函数在多次被调用时记住变量的值,而这些变量不是全局变量。
总结
以上是生活随笔为你收集整理的PHP:使用静态变量的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: Cocos Creator 3.2 中实
- 下一篇: php基础 快速入门文档,快速入门 -