【php中static静态变量的使用方法详解】教程文章相关的互联网学习教程文章

利用static实现表格的颜色隔行显示的代码_php技巧

在实际编程应用中我们对STATIC的功能经常遗忘。要好好反省。。:) 我们用PHP从数据库查询数据,并将结果输出到浏览器上,如果结果有很多行,表格的bgcolor如果全是单色的,浏览者会感觉不太舒服。那麽怎样做使表格各行的颜色不同呢? 请看下面: 代码如下:function getcolor() { static $colorvalue;//定义一个静态变量 if($colorvalue=="#ffffff") $colorvalue="#000000"; else $colorvalue="#ffffff"; return($c...

phpself,$this,const,static,->的使用_php技巧

今天来总结下。 、在类的内部方法访问已经声明为const及static的属性时,使用self::$name的形式。注意的是const属性的申明格式,const PI=3.14,而不是const $PI=3.14 代码如下:class clss_a { private static $name="static class_a"; const PI=3.14; public $value; public static function getName() { return self::$name; } //这种写法有误,静态方法不能访问非静态属性 public static function getName2() { return self::$v...

PHP类中Static方法效率测试代码_php技巧

类的定义如下: 代码如下:class test { public static function a(){} public function b(){} } $obj = new test; 比较以下几种情况 test::a(); $obj->a(); $obj->b(); 测试代码: 代码如下:$obj = new test; $test_times = 100; $times = 10000; $effi1 = array(); $effi2 = array(); while ($test_times-- > 0) { $time1 = microtime(true); for($i=0; $i<$times; $i++) { test::a(); } $time2 = microtime(true); for($i=0; ...

PHP中static关键字原理的学习研究分析_php技巧

看PHP手册的时候发现了下面这样一段代码: 代码如下:function Test() { static $count = 0; $count++; echo $count; if ($count Test(); } $count--; } ?> 执行结果如下: 这是一个递归的函数,声明的静态变量count记录次数,输出1~10。 我在看的时候有个疑惑,递归调用的时候 static $count = 0; 语句会重复执行,这为什么不会导致count变量被重复赋值呢?带着这个疑问和同事研究了一下,测试用代码如下: 代码如下:echo 'star...

PHP类的静态(static)方法和静态(static)变量使用介绍_php技巧

在php中,访问类的方法/变量有两种方法: 1. 创建对象$object = new Class(),然后使用”->”调用:$object->attribute/function,前提是该变量/方法可访问。 2. 直接调用类方法/变量:class::attribute/function,无论是静态/非静态都可以。但是有前提条件: A. 如果是变量,需要该变量可访问。 B. 如果是方法,除了该方法可访问外,还需要满足: b1) 如果是静态方法,没有特殊条件; b2) 如果是非静态方法,需要改方法中没有使用...

php函数中使用static的说明_php技巧

代码如下:function sendHeader($num, $rtarr = null) { static $sapi = null; if ($sapi === null) { $sapi = php_sapi_name(); } return $sapi++;   看PW源码的时候发现setHeader()函数中使用static关键字,很奇怪,以前也没这样用过。 static用在函数里面,声明一次变量后,如果再次调用这个函数将会在初始值延续,如$sapi这里将累加。 代码如下:echo sendHeader(1).""; echo sendHeader(2).""; echo sendHeader(3)."";   ...

解析php中static,const与define的使用区别_php技巧

define部分:宏不仅可以用来代替常数值,还可以用来代替表达式,甚至是代码段。(宏的功能很强大,但也容易出错,所以其利弊大小颇有争议。)宏的语法为:#define 宏名称 宏值作为一种建议和一种广大程序员共同的习惯,宏名称经常使用全部大写的字母。利用宏的优点:1)让代码更简洁明了当然,这有赖于你为宏取一个适当的名字。一般来说,宏的名字更要注重有明确直观的意义,有时宁可让它长点。2)方便代码维护对宏的处理,在编译过程...

浅析php变量修饰符static的使用_php技巧

静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。看看下面的例子: 代码如下:function test(){static $a=0;$a++;echo $a;}test();//1test();//2test();//3Note: 静态变量可以按照上面的例子声明。如果在声明中用表达式的结果对其赋值会导致解析错误。 代码如下:static $a=0+1;static $a=sqrt(121);像上面的赋值方式会报错,不信你试试

PHP面向对象之旅:深入理解static变量与方法_php技巧

static关键字声明一个属性或方法是和类相关的,而不是和类的某个特定的实例相关,因此,这类属性或方法也称为“类属性”或“类方法”。 如果访问控制权限允许,可不必创建该类对象而直接使用类名加两个冒号“::”调用。 static关键字可以用来修饰变量、方法。 不经过实例化,就可以直接访问类中static的属性和static的方法。 static 的属性和方法,只能访问static的属性和方法,不能类访问非静态的属性和方法。因为静态属性和方法被...

php面向对象中static静态属性与方法的内存位置分析_php技巧

本文实例分析了php面向对象中static静态属性与方法的内存位置。分享给大家供大家参考。具体如下: static静态属性的内存位置——>类,而不是对象。下面做测试来证明一下 <?php header("content-type:text/html;charset=utf-8"); class Human{static public $name = "小妹";public $height;public function tell(){} } echo Human:$name; //不依赖于对象,就能直接访问。因为静态属性的内存位置是在类里,而不是对象。 $p1 = new Hu...

php面向对象中static静态属性和静态方法的调用_php技巧

本文实例讲述了php中static静态属性和静态方法的调用。分享给大家供大家参考。具体如下: 这里分析了php面向对象中static静态属性和静态方法的调用。关于它们的调用(能不能调用,怎么样调用),需要弄明白了他们在内存中存放位置,这样就非常容易理解了。静态属性、方法(包括静态与非静态)在内存中,只有一个位置(而非静态属性,有多少实例化对象,就有多少个属性)。 实例: <?php header("content-type:text/html;charset=ut...

php之static静态属性与静态方法实例分析_php技巧

本文实例讲述了php之static静态属性与静态方法。分享给大家供大家参考。具体如下: <?php /** static*//*静态:属于类而不属于单个对象 (全局的,所有对象共享的)*静态属性:类的方法内调用静态属性时,不要使用$this->方式,而要使用self::的方式*静态方法:*在类没有任何对象的时候也能被调用*当成普通方法来用也没问题的*在静态方法中不能调用普通方法* * */class xin {static private $name;public function setname($namec)...

php面向对象编程self和static的区别_php技巧

在php的面向对象编程中,总会遇到 class test{public static function test(){self::func();static::func();}public static function func(){} }可你知道self和static的区别么? 其实区别很简单,只需要写几个demo就能懂: Demo for self:class Car {public static function model(){self::getModel();}protected static function getModel(){echo "This is a car model";} }Car::model(); Class Taxi extends Car {protected stat...

php基础知识:类与对象(5) static

Declaring class members or methods as static makes them accessible without needing an instantiation of the class. A member declared as static can not be accessed with an instantiated class object (though a static method can). 声明静态的类变量和方法可以不需要实例化类对象的情况下对他们进行调用。静态类不能被类对象调用。(类的静态方法可以)。//注意看第一个例子,在一个非静态的方法中调用了静态的变量。唯一...

理解PHP5中static和const关键字的区别

PHP5中加入了很多面向对象的思想,PHP5的面向对象比较接近Java的面向对象思想。我们这里对PHP5中的static和const关键字作用进行一下描述,希望对学习PHP5的朋友有帮助。 (1) static static关键字在类中是,描述一个成员是静态的,static能够限制外部的访问,因为static后的成员是属于类的,是不属于任何对象实例,其他类是无法访问的,只对类的实例共享,能一定程序对该成员尽心保护。类的静态变量,非常类似全局变量,能够被所有类...

静态变量 - 相关标签