【PHP入门】1.2-常量与变量

简介: 【PHP入门】1.2-常量与变量

-常量与变量-

PHP是一种动态网站开发的脚本语言,动态语言特点是交互性,会有数据的传递,而PHP作为“中间人”,需要进行数据的传递,传递的前提就是PHP能自己存储数据(临时存储)


1.2.1变量基本概念

变量来源于数学,是计算机语言中能储存计算结果或能表示值抽象概念。变量可以通过变量名访问。在指令式语言中,变量通常是可变的。


1、 变量是用来存储数据的;


2、 变量是存在名字的;


3、 变量是通过名字来访问的:数据;


4、 变量是可以改变的:数据。


1.2.2变量的使用

PHP中的所有变量都必须使用“$”符号


1、 定义:在系统中增加对应的变量名字(内存)

2、 赋值:可以将数据赋值给变量名(可以在定义的同时完成)

3、 可以通过变量名访问存储的数据

4、 可以将变量从内存中删除

1.2.4变量命名规则

1、 在PHP中变量名字必须以“$”符号开始;

2、 名字由字母、数字和下划线“_”构成,但是不能以数字开头;

3、 在PHP中本身还允许中文变量(不建议)。

1.2.5预定义变量

预定义变量:提前定义的变量,系统定义的变量,存储许多需要用到的数据(预定义变量都是数组)

$_GET           //:获取所有表单以get方式提交的数据

$_POST            //:POST提交的数据都会保存在此

$_REQUEST         //:GET和POST提交的都会保存

$GLOBALS          //:PHP中所有的全局变量

$_SERVER          //:服务器信息

$_SESSION         //:session会话数据

$_COOKIE          //:cookie会话数据

$_ENV           //:环境信息

$_FILES           //:用户上传的文件信息

1.2.6可变变量

可变变量:如果一个变量保存的值刚好是另外一个变量的名字,那么可以直接通过访问一个变量得到另外一个变量的值:在变量前面再多加一个$符号。

$a = ‘b’;
$b = ‘bb’;
$$=bb

1.2.7变量传值

将一个变量赋值给另外一个变量:变量传值

变量传值一共有两种方式:值传递,引用传递

值传递:将变量保存的值赋值一份,然后将新的值给另外一个变量保存(两个变量没有关系)


800a79ab05a0b7edbb1bb4be6526017f_8f2fab631a4b402e92f3919b1d5bee84.png


引用传递:将变量保存的值所在的内存地址,传递给另外一个变量:两个变量指向同一块内存空间(两个变量是同一个值)


KaTeX parse error: Expected 'EOF', got '&' at position 7: 新变量 = &?老变量;

ddc2660a352e9bb9b608eee0fb34b909_48bd09031ace4cfe9c7670b7a2e42a82.png

在内存中,通常有以下几个分区

栈区:程序可以操作的内存部分(不存数据,运行程序代码),少但是快

代码段:存储程序的内存部分(不执行)

数据段:存储普通数据(全局区和静态区)

堆区:存储复杂数据,大但是效率低

代码实现:

fbb5541557b0c38c5770dcdb91ac0e99_6d111b9ddf704efa9a0aad52cbd1a21e.png

1.2.8常量基本概念

常量与变量一样,都是用来保存数据的。


常量:const/constant,是一种在程序运行当中,不可改变的量(数据)


常量一旦定义,通常数据不可改变(用户级别)


常量定义形式

在PHP中常量有两种定义方式(5.3之后才有两种)


1、 使用定义常量的函数:define(‘常量名’,常量值);


2、 5.3之后才有的:const 常量名 = 值;


c82a7827a6c10d27ded56c3bc0956451_9d0c5e64c7b14e12b8cb09450d4fbff7.png


常量名字的命名规则


1、 常量不需要使用“$”符号,一旦使用系统就会认为是变量;


2、 常量的名字组成由字母、数字和下划线组成,不能以数字开头;


3、 常量的名字通常是以大写字母为主(与变量以示区别);


4、 常量命名的规则比变量要松散,可以使用一些特殊字符,该方式只能使用define定义;


b9ec31063a02fd4386a945010de188de_179f15882a114da38e8f95ce69f23ef4.png


注意细节:


1、 Define和const定义的常量是有区别:在于访问权限区别


2、 定义常量通常不区分大小写,但是可以区分,可以参照define函数的第三个参数


1.2.9常量使用形式

常量的使用与变量一样:不可改变值(在定义的时候必须赋值)


db827d3d712a8e341e90e744c9882f68_91b9d885cd434a21b3dc864594c09f02.png


有的时候还需要使用另外一种形式来访问(针对的是特殊名字的常量),需要用到另外一个访问常量的函数:


constant(‘常量名’)

c9c710cfe96d4bec3799f8e496f25577_e90c2494e18a448d927081ed90b30478.png


说明:常量和变量的使用


1、 凡是数据会可能变化的,那么肯定是用变量


2、 数据不一定会变的,可以使用常量或者变量(变量居多)


3、 数据不允许被修改的,一定用常量


1.2.10系统常量

系统常量:系统帮助用户定义的常量,用户可以直接使用


常用的几个系统常量

PHP_VERSION:PHP版本号
PHP_INT_SIZE:整形大小
PHP_INT_MAX:整形能表示的最大值(PHP中整形是允许出现负数:带符号)
PHP_INT_MAX:整形能表示的最大值(PHP中整形是允许出现负数:带符号)


1cbdba935099d09ec6fc56bc427b0fe6_3db06e448379488b81f035c85016958c.png

在PHP中还有一些特殊的常量,他们有双下划线开始+长两名+双下划线结束,这种常量称之为系统魔术常量:魔术常量的值通常会跟着环境变化,但是用户改变不了

__DIR__:当前被执行的脚本所在电脑的绝对路径
__FILE__:当前被执行的脚本所在的电脑的绝对路径(带自己文件的名字)
__LINE__:当前所属的行数

__NAMESPACE__:当前所属的命名空间
__CLASS__:当前所属的类
__METHOD__:当前所属的方法
相关文章
|
4天前
|
存储 安全 PHP
【PHP 开发专栏】PHP 框架入门与选择
【4月更文挑战第30天】本文介绍了PHP框架的基础知识,强调其在提高开发效率和代码质量上的优势。文中列举了常见的PHP框架,如Laravel(适合复杂项目)、Symfony(适合企业级应用)、CodeIgniter(轻量级,适用于中小型项目)、Yii(高性能,适合大型应用)和Phalcon(极佳性能,适合高并发场景)。选择框架时,应考虑项目需求、学习曲线、社区支持和技术栈兼容性。
|
4天前
|
PHP
【PHP入门】2.2 流程控制
【PHP入门】2.2 流程控制
【PHP入门】2.2 流程控制
|
4天前
|
PHP 存储
【PHP入门】2.1-运算符
【PHP入门】2.1-运算符
【PHP入门】2.1-运算符
|
4天前
|
存储 PHP 数据库
【PHP入门】1.3-数据类型、转换、判断
【PHP入门】1.3-数据类型、转换、判断
【PHP入门】1.3-数据类型、转换、判断
|
4天前
|
开发框架 .NET PHP
【PHP入门】1.1-PHP初步语法
【PHP入门】1.1-PHP初步语法
|
4天前
|
存储 PHP 容器
【PHP 开发专栏】PHP 基础语法与变量详解
【4月更文挑战第30天】本文概述了PHP的基础,包括脚本结构(<?php至?>标签)、注释(单行和多行)、数据类型(整型、浮点型、字符串型、布尔型、数组、对象)、运算符(算术、比较、逻辑)和流程控制(条件、循环语句)。还讨论了PHP变量的定义、作用域、类型转换及引用传递。了解这些基础知识对PHP编程至关重要,实践中不断学习和探索能提升Web开发技能。
|
4天前
|
PHP 开发者
【PHP开发专栏】PHP面向对象编程入门
【4月更文挑战第29天】本文介绍了PHP中的面向对象编程,包括类、对象、继承、封装和多态等基本概念。文中通过示例展示了如何在PHP中定义类、创建对象,以及使用构造和析构方法。此外,还探讨了访问修饰符、继承、封装和多态的实现方式,如接口和抽象类。最后,提到了PHP的静态方法、常量和自动加载等高级特性,强调了面向对象编程对提升PHP开发效率和代码质量的重要性。
|
4天前
|
SQL 关系型数据库 MySQL
【PHP开发专栏】PHP与数据库交互入门
【4月更文挑战第29天】本文介绍了PHP与数据库交互的基础,包括选择MySQL或PostgreSQL等关系型数据库,使用MySQLi或PDO扩展进行连接。示例展示了如何使用PHP连接数据库,如MySQLi的面向对象连接方式和PDO的多数据库支持。此外,还讲解了执行SQL查询(如SELECT、INSERT、UPDATE、DELETE)的操作,并强调了安全性与错误处理,如使用预处理语句防止SQL注入。通过学习,读者可掌握PHP操作数据库的基本技能。
|
4天前
|
存储 PHP 开发者
PHP变量命名规则
PHP变量命名规则
21 0
|
4天前
|
存储 数据处理 PHP
PHP变量类型
PHP变量类型
19 0
http://www.vxiaotou.com