php变量使用方法详解

静态变量

动态变量当函数执行完之后,其存储空间会自动释放。而静态变量则当函数执行完后,存储空间仍然存储其变量。如果想利用函数的变量结果在进行计算,就需要将变量设置为静态变量。

php静态变量的设置方法是在变量前加”static”符号。

实例:

 代码如下 复制代码

<?php
 function fun(){
  static $i=0;
  echo "$i <br>";
  $i++;
 }
 fun();
 fun();
?>

动态变量

当我们定义了一个变量,就相当于在服务器申请了一个存储空间。动态变量即值不断变化的量,特点是当函数运行完成后,其变量存储空间的值就会自动释放。就比如货车拉货,运到目的地后就卸货,然后返回在拉。

实例:

 代码如下 复制代码

<?php
 function fun(){
  $i=0;
  echo "$i <br>";
  $i++;
 }
 fun();
 fun();
?>

全局变量

前面学习了局部变量,其值只在一定范围内有效,如果要实现跨域调用,则要用到全局变量。

php定义全局变量:全局变量的声明只要在变量名前加上”global”就可以了,定义了全局变量之后,主程序的变量可以被函数内部调用,同样地函数内的变量也可以被主程序所用。

实例1:

 代码如下 复制代码

<?php
 $a=1;
 function fun(){
  echo $a ."<br>"; /* $a为局部变量,不显示内容 */
  global $a;  /* 定义$a为全局变量 */
  echo $a ."<br>";
  global $b;
  $b=10;
 }
 fun();
 echo $b;
?>

局部变量

在php语言中,变量都有一定的作用范围,一旦离开,变量将失去意义或者发生改变,称之为变量作用域。就好象局域网,只在组建的办公室或者宿舍有效,一旦超出这个范围将连接不到网络。按变量的作用范围可以分为局部变量和全局变量,这里先讲局部变量。

php局部变量值函数内定义的变量只在函数内使用,函数外无效;同样地,函数外定义的变量如果没有传递,在函数内也无效。

实例:

 代码如下 复制代码
<?php
 function fun(){
  $a1=5;
  echo $a2;
 }
 fun();
 $a2=10;
 echo $a1;
?>

 

以上代码运行后什么也没有输出。

变量函数

变量不仅可以用一些英文字母等字符等义, 也可以对函数定义。如果将一个变量名后加上”()”符号,php将寻找与变量的值相同的函数执行,称之为变量函数。

实例:

 代码如下 复制代码

<?php
 function p($name){
  echo "my name is ".$name;
 }
 $someone="p";  /* 将字符串"p"赋给$someone */
 $someone('Tom'); /* 这里等价于$p('Tom'),是一个变量函数 */
?>

时间: 2024-09-20 19:37:24

php变量使用方法详解的相关文章

Nginx设置$_SERVER变量的方法详解

在有的PHP中定义ENVIRONMENT常量,可以区分开发环境和生产环境,如: define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development'); switch (ENVIRONMENT) {  case 'development':   error_reporting(-1);   ini_set('display_errors', 1);  break;    case 'testing

ASP包含文件方法详解

详解 ASP包含文件方法详解 SSI 指令为用户提供在 Web 服务器处理之前将一个文件的内容插入到另一个文件的方法.ASP 只使用这一机制的 #include 指令.要在 .asp 文件中插入一个文件,使用下面的语法: <!--#include virtual | file ="filename"--> virtual 和 file 关键字指示用来包含该文件的路径的类型,filename 是您想包含的文件的路径和名称. 被包含文件不要求专门的文件扩展名:但是,为被包含文件

ASP.NET动态设置页面标题的方法详解

这篇文章介绍了ASP.NET动态设置页面标题的方法详解,有需要的朋友可以参考一下     ASP.NET为我们提供了一个控件类:System.Web.UI.HtmlControls.HtmlGenericControl.它可以实现 HTML的元素的一个实例,比如在.cs代码中控制aspx中的<td>元素(注意,它不是<ASP:TableCell>). 我们知道,页面标题是被包含在<TITLE></TITLE>中的,而<TITLE>也是一个HTML

Ruby中的钩子方法详解

  这篇文章主要介绍了Ruby中的钩子方法详解,本文讲解了什么是钩子方法.included.Devise中的 included.extended.ActiveRecord中的 extended.prepended.inherited等内容,需要的朋友可以参考下 Ruby的哲学理念是基于一个基本的要素,那就是让程序员快乐.Ruby非常注重程序员的快乐,并且也提供了许多不同的方法来实现它. 它的元编程能力能够让程序员编写在运行时动态生成的代码.它的线程功能使得程序员有一种优雅的的方式编写多线程代码.

PHP中filter函数校验数据的方法详解_php技巧

介绍PHP中filter函数校验数据的方法详解,PHP过滤器包含两种类型:Validation用来验证验证项是否合法.Sanitization用来格式化被验证的项目,因此它可能会修改验证项的值,将不合法的字符删除. input_filters_list() 用来列出当前系统所支持的所有过滤器. 复制代码 代码如下: <?php foreach(filter_list() as $id => $filter) {     echo $filter.' '.filter_id($filter).&

Android中用Bmob实现短信验证码功能的方法详解_Android

 这篇文章主要介绍发送验证码和校验验证码的功能,用到一个第三方平台Bmob,那Bmob是什么呢?Bmob可以开发一个云存储的移动应用软件,他提供了大量的标准的API接口,根据需要接入相关服务,开发者可以更加专注于应用的开发,让产品交付更快速,验证码功能就是其中一个. 一.跟其他第三方一样,我们开发之前要做一些准备工作. 1.首先,去官网注册一个帐号:http://www.bmob.cn/: 2.然后就可以创建应用了:具体怎么做Bmob说得很清楚了(官方操作介绍),如果你不想看,我简单说一下:点击

JSONObject使用方法详解_javascript技巧

1.JSONObject介绍 JSONObject-lib包是一个beans,collections,maps,java arrays和xml和JSON互相转换的包. 2.下载jar包 http://files.cnblogs.com/java-pan/lib.rar 提供了除JSONObject的jar之外依赖的其他6个jar包,一共7个jar文件 说明:因为工作中项目用到的版本是1.1的对应jdk1.3的版本,故本篇博客是基于1.1版本介绍的. 对应此版本的javadoc下载路径如下:htt

jQuery使用contains过滤器实现精确匹配方法详解_jquery

本文实例讲述了jQuery使用contains过滤器实现精确匹配的方法.分享给大家供大家参考,具体如下: :contains 选择器选取包含指定字符串的元素. 该字符串可以是直接包含在元素中的文本,或者被包含于子元素中. 经常与其他元素/选择器一起使用,来选择指定的组中包含指定文本的元素,如: $("p:contains(is)") 表示选择所有包含 "is" 的 <p> 元素. 再如: $("p:contains(张三)") 或 $

Java中成员方法与成员变量访问权限详解_java

记得在一次面试的笔试题中,有的面试官会要求写出具体的像pullic这些访问限定符的作用域.其实,平常我都没去系统的考虑这些访问限定符的作用域,特别是包内包外的情况,OK,笔试不行了.  这是java基本的知识,也是公司看重的,那没办法啦,我的脑袋记不住东西,那我只能把这些东西写下来方便自己温故知新,不废话了,贴代码了. 代码如下: package com.jaovo; /** *_1_ 成员变量访问权限的求证 * public private protected default(默认的权限) *