快速业务通道

PHP学习之PHP变量

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-05-24
PHP变量

  PHP3支持下面类型的变量:
(一)、内部变量   
   主要有整数(interger),浮点数(float-point numbers),字符串(string),数组(array),对象(object)。
1 初始化变量   
要在PHP中初始化变量, 你只要简单的给它赋值即可。对于大多数类型,这是最直接的。对于数组和对象,可以使用其它方法。
2 初始化数组   
数组可以使用这两种方法之一来赋值: 使用一系列连续数值,或使用array()函数构造 (见 Array functions 部分)。   
要将连续的数值加进数组,你只需将要赋值赋给不带下标的数组变量。该值会作为数组的最后元素加进数组中。   
例:    $names[] = "Jill"; // $names[0] = "Jill"    $names[] = "Jack"; // $names[1] = "Jack" 与c、perl相似,
数组下标也是从0开始。
3 初始化对象
要初始化一个对象,需用new语句建立该类型的变量。        
class foo {         
function do_foo() {           
echo "Doing foo."; }?             }         $bar = new foo;         $bar->do_foo();
4 变量作用域   
变量的作用域就是它的有效范围。对于大多数PHP的变量只有一个作用域。在用户自定义函数里采用局部变量作用域。
函数内使用的变量被缺省设置为局部变量。例如:      $a=1; /* global scope */      
Function Test() {        echo $a; /* reference to local scope variable */              }      
Test(); 这段程序不会输出任何的东西,因为echo语句要输出局部变量 $a ,而函数内的 $a 从未被赋过值。
你可能注意到这和C语言有点小小的区别,C中全局变量可以直接在函数内引用,除非它被一个局部变量所覆盖。
而这使得人们可能不注意修改了全局变量的值。在PHP中要在函数内部使用全局变量必须显式的说明。
例如:        $a=1;        $b=2;        Function Sum() {          global $a,$b;         
 $b = $a + $b;               }        Sum();        echo $b; 上面程序将输出"3"。
通过在函数内部声明$a和$b是全局变量,所要变量都参考全局。一个函数可以操纵的全局变量的数量没有限制。   
作用域的另外一个值得注意的地方是static 变量。
一个 static变量存在于局部函数中,但当程序离开这个函数时它的值不会丢失。
考虑下面的例子:      Function Test() {        $a=0;        echo $a;        $a++;        }
这个函数是没用的,因为每次调用时它都先把$a赋为 0 然后打出"0"。 对$a++的自加没有任何效果因为函数调用结束后变量
$a 就被释放了。要使记数程序有效记数而不丢掉当前的记数结果,$a 要声名为static变量:
      Function Test() {         static $a=0;         echo $a;         $a++;
      } 现在,每次调用Test()函数它都会打出$a的值并把增加它的值。 当使用递归函数时静态变量是必不可少的。
递归函数就是调用自己的函数。写递归函数时一定要十分小心,
因为它的循环次数不确定。你必须确保有足够的条件结束递归过程。下面是一个简单的递归函数记数到10:
      Function Test() {        static $count=0;        $count++;        
echo $count;        if($count < 10) {          Test();          }         }
(二) 动态变

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号