PHP学习记录【php变量与常量】

作者:神秘网友 发布时间:2020-09-23 11:05:57

PHP学习记录【php变量与常量】

PHP学习记录【php变量与常量】
  • 什么是变量

程序中的变量源于数学,在程序语言中能够储存结果或者表示抽象概念。简单理解变量就是临时存储值的容器,它可以储存数字、文本、或者一些复杂的数据等。变量在PHP 中居于核心地位,是使用 PHP 的关键所在,变量的值在程序运行中会随时发生变化,能够为程序中准备使用的一段数据起一个简短容易记的名字,另外它还可以保存用户输入的数据或运算的结果。

  • 声明(创建)变量

因为 PHP 是一种弱类型的语言,所以使用变量前不用提前声明,变量在第一次赋值时会被自动创建,这个原因使得 PHP 的语法和C语言、Java等强类型语言有很大的不同。

声明 PHP 变量必须使用一个美元符号“$”后面跟变量名来表示,然后再使用“=”给这个变量赋值。如下所示:

<?php
$a = 1;
$b = 2;
$c = 3;
echo $a.', '.$b.', '.$c;
?>

运行结果如下:

1, 2, 3

  • 变量的命名规则

变量名并不是可以随意定义的,一个有效的变量名应该满足以下几点要求:

  • 变量必须以 $ 符号开头,其后是变量的名称,$ 并不是变量名的一部分;如变量x必须要写成$x
  • 变量名必须以字母或下划线开头;
  • 变量名不能以数字开头;
  • 变量名只能包含字母(A-Z)、数字(0-9)和下划线(_);
  • 与其它语言不通的是,PHP 中的一些关键字也可以作为变量名(例如 $ true、$ for);
  • 变量命名要有意义(别写xxx,aaa,ccc这种 变量名);
  • 变量不要用特殊符号、中文,_不算特殊符号。

注意:PHP 中的变量名是区分大小写的,因此 $var 和 $Var 表示的是两个不同的变量。

正确的变量命名如下所示:

<?php
    $name = "C语言中文网";                  // 变量名为:name,变量值为:C语言中文网
    $url = "http://c.biancheng.net/";       // 变量名为:url,变量值为:http://c.biancheng.net/
    $Url = "http://c.biancheng.net/php/";   // 变量名为:Url,变量值为:http://c.biancheng.net/php/
    $_str = "PHP是世界上最好的语言";        // 变量名为:_str,变量值为:PHP是世界上最好的语言
    echo $name.'<br>'.$url.'<br>'.$Url.'<br>'.$_str;
?>

运行结果如下:

C语言中文网
http://c.biancheng.net/
http://c.biancheng.net/php/
PHP是世界上最好的语言

错误的变量命名如下所示:

<?php
    $1122_num = 11111;        // 变量名不能以数字开头
    $~%_str = "PHP教程";      // 变量名不能包含特殊字符
?>

运行上面的代码会提示语法错误:
PHP学习记录【php变量与常量】

注意:虽然以字母和下划线开头,后面跟随中文字符也可以作为变量名称,但是并不建议这么做。

虽然只要满足上面的命名规则,变量名就是有效的,但是还是建议定义的变量名要有一定的意义,例如使用 name 表示姓名;使用 url 表示网站链接等。

当使用多个单词构成变量名时,可以使用下面的命名规范:

  • 下划线命名法:将构成变量名的单词以下划线分割,例如 $ get_user_name、$ set_user_name;
  • 驼峰式命名法(推荐使用):第一个单词全小写,后面的单词首字母小写,例如 $ getUserName、$getDbInstance;
  • 帕斯卡命名法:将构成变量名的所有单词首字母大写,例如 $ Name、$ MyName、$GetName。

变量分类:可变变量、外部变量、环境变量

  1. 可变变量举例说明:
<?php
$str = 'good';  
$good = 'test';  
$test = 'Hello World!';  
echo $$$str; // Hello World!
?>

输出的结果为:

Hello World!

<?php
$str = 'Hello World!';
echo '$str';// $str
echo '<br/>';
echo "$str";// Hello World!
?>

输出的结果为:

$str
Hello World!

<?php
list($a, $b, $c, $d) = array(1, 2, 3, 4);
echo $a, $b, $c, $d; // 1234
?>

输出的结果为:

1234

2.外部变量举例说明:

PHP的外部变量是PHP在使用过程中规定好的一些变量,例如:

<html>
   <head>
   </head>
   <body>
       <!-- 这一行method 对应的值改为了post -->
       <form action="reg.php" method="post">
           <input type="text" name="username" />
           <input type="password" name="pwd" />
           <input type="submit" value="提交" />
       </form>
   </body>
</html>

下面是上面html代码中的reg.php文件:

<?php
//$_POST后面加上中括号,将username作为字符串放在中括号里面,就得到了表单里面的<input type="text" name="username" /> 的值
$u = $_POST['username'];
echo $u.'<br />';

//$_POST['pwd'] 得到表单<input type="text" name="username" /> 的值
$passwd = $_POST['pwd'];
echo $passwd.'<br />';
?>

通过上面的实验我们知道了,通过$_POST这个外部变量,可以得到从表单输入的值。
另外下面有一些其他的外部变量名:

全局变量名功能说明
$_COOKIE得到会话控制中cookie传值
$_SESSION得到会话控制中session的值
$_FILES得到文件上传的结果
$_GET得到get传值的结果
$_POST得到post传值的结果
$_REQUEST即能得到get的传值结果,也能得到Post传值的结果

3.环境变量举例说明:

环境变量我们主要用的有 $_SERVER和 $ _ENV两个环境变量。不过,$ _ENV逐渐被PHP的新版本给废弃了。

<?php

phpinfo();

?>

其它环境变量:

$_SERVER[“REQUEST_METHOD”]请求当前PHP页面的方法
$_SERVER[“REQUEST_URL”]请求的URL
$_SERVER[“SERVER_SOFTWARE”]用的是哪一种服务器
$_SERVER[“REMOTE_ADDR”]客户的IP地址
$_SERVER[“SERVER_ADDR”]当前服务器的IP地址
$_SERVER[“SCRIPT_FILENAME”]主前请求文件的路径
$_SERVER[“HTTP_USER_AGENT”]当前访问这个网址的电脑和浏览器的情况
$_SERVER[“HTTP_REFERER”]上级来源(用户从哪个地址进入当前网页的)
$_SERVER[“REQUEST_TIME”]当前的时间
<?php

define('MY_NAME','PHP中文网');

echo MY_NAME;
//下面是错误的调用方式
echo '我的名字是MY_NAME';
//正确的调用方式该这么写
echo '我的名字是' . MY_NAME;
?>

系统还为我们准备了一些内置的常量,如下:

常量名说明
LINE当前所在的行
FILE当前文件在服务器的路径
FUNCTIOIN当前函数名
CLASS当前类名
METHOD当前成员方法名
PHP_OSPHP运行的操作系统
PHP_VERSION当前PHP的版本
TRAITTRAIT的名字,php5.4新加
DIR文件所在的目录
NAMESPACE当前命名空间的名称(区分大小写)

PHP学习记录【php变量与常量】相关教程

  1. 个人学习系列 - Spring Boot 整合 H2
  2. 自我摸索QGIS学习1安装QGIS3.10
  3. MSU最新《深度强化学习中的迁移学习》2020综述论文22页pdf
  4. Thinkphp5.0.11 验证码永远错误
  5. 在Intel nuc上配置D435i、运行VINS-Mono及问题记录
  6. CSS3 学习笔记 DAY7
  7. CSS学习笔记 DAY6
  8. CSS3 学习笔记 DAY8