【华安php入门系列】第2天php的变量

一、量

1、php在运行时,所能够处理的数据

2、根据数据类型的不同,分成:变量和常量


、变量

1、业务逻辑的完成,完成业务所关联的数据的不断变化,这就是:变量

2、变量是由:可以引用该变量的‘ 变量名’和表示该变量内容的 ‘变量值’ 组成。

3、PHP使用 $ 符号来表示 某个名称是一个变量名。变量名不包括$符号,$只是一个标识符,表示$后面的是一个变量名而已。

4、PHP中通过 = 号来表示 变量名 和 变量值 直接的关系。


、变量名的规则

1、只能有字母、数字、下划线。不能以数字开头。(汉字 可以用做变量名

2、区分大小写。


四、变量取名方法(实际开发环境要学会给变量起名,这样会提高开发效率

1、通常一个变量名会有一个或者多个单词组成。

2、用的方法有:下划线方法、大小驼峰法。 不过实际开发的方法就是按照公司、项目组约定进行就可以了。


五、可变变量名

1、变量名可以被另外的一个变量值充当,要求这个变量名的值是一个合法的变量名。

$name = 'stu_name';

$$name = '努力学好PHP哦!';

var_dump($stu_name); //努力学好PHP哦!

几乎所有的php标识符(变量名、函数名、类名、方法名)都是可以由其他变量值充当的。


六、变量值

1、通过 = 号给一个变量引用一个值,称之为 赋值

A、什么值可以用来赋值?

a、表达式(可以得到值的语句,还可以是多个值的运算结果、函数返回值)

2、使用一个变量为另一个变量赋值时:

a、值传递的过程

$v1 = 10;

$v2 = $v1; //值传递的过程

$v1 = 20;

var_dump($v2); //10

b、引用传递的过程(在php建议少用,用了也不会有多少优化---这个和php的zval结构有关【后期会做详细解释】)

$v3 = 10;

$v4 = &$v3; //取得$v3的引用

$v3 = 20;

var_dump($v4); //20


七、删除一个变量

用php内置unset($变量名)

1、删除一个变量做了哪些工作呢?

a、消除变量的引用

b、消除当前的变量名

注意:变量值的空间是没有被unset()消除的。那么会导致很多的空间浪费,PHP内部存在一个垃圾回收机制,这个回收机制是根据 引用计数(后期会出专题详解)来做的。


8、检测一个变量是否存在?

使用php内置函数isset($变量名)


9、PHP的9大预定义变量:

1、$_SERVER[] 保存服务器可以获得的一些信息(来源于服务器、浏览器)

echo $_SERVER['REMOTE_ADDR'];
echo $_SERVER['HTTP_USER_AGENT']
echo $_SERVER[SERVER_ADDR];
echo $_SERVER['DOCUMENT_ROOT'];

2、$_GET

通过 URL 参数传递给当前脚本的变量的数组。

http://test.38.com/6.php?name=li
echo 'you name is ' . $_GET['name']; //li

3、$_POST

表单method="post"提交的数据获取

4$_REQUEST

$_REQUEST 请求,保存所有的请求数据(浏览器带到服务器的数据)。GET和POST的都算
$_REQUEST = $_GET + $_POST 是一个 get和post的合并。

如果既有get数据又有post数据:如果出现冲突,是会保存post的数据。因为是get先放入$_REQUEST内,后放post的会覆盖掉前面的。以上的操作是默认的。可以被配置:PHP的配置request_order进行

5、$_SESSION

6、$_COOKIE

7、$_FILE

通过 HTTP POST 方式上传到当前脚本的项目的数组。 一般上传文件使用。

8、$_GLOBALS

一个包含了全部变量的全局组合数组。变量的名字就是数组的键。

9、$_ENV

环境变量


十、2个传递给脚本的参数的预定义变量($argv, $argc)

以 命令行 的形式运行php脚本时:
php.exe -f d:/amp/apache2.2/htdocs/test/6.php han zhongkang
argv保存 php命令行脚本获得的所有参数(选项)。执行的php的脚本名,也是第一个参数。
argc保存获得的参数 个数。
命令行脚本php所获得的参数 是根据位置决定的。


注意:$this 通常是不可以使用的变量名。


明天继续讲:php常量和数据类型

原文地址:https://www.cnblogs.com/xinyuyuanm/p/3000923.html