前端学PHP之变量

×

目录

[1]变量定义 [2]关键字 [3]变量赋值[4]可变变量[5]变量函数

前面的话

  变量是用于临时存储值的容器。这些值可以是数字、文本,或者复杂得多的排列组合。变量在任何编程语言中都居于核心地位,理解它们是使用php的关键所在。下面将详细介绍php中的变量

  [注意]关于javascript中的变量部分移步至此

变量定义

  php的特性之一就是它不要求在使用变量之前声明变量,当第一次给一个变量赋值时,才创建了这个变量

  变量以$符号开头,其后是变量的名称。变量名称必须以字母或下划线开头,对大小写敏感

<?php
$x=5;
echo $x;//5
echo $X;//报错
?>

  [注意]内置结构和关键字以及用户自定义的类名和函数名是不区分大小写的,比如echo、while、函数名称等都可以任意大小

<?php
  //输出123
    echo 1;
    Echo 2;
    eCho 3;
?>

关键字

  php中有一些是系统定义的,也称为关键字,是php语言的组成部分、因此不能使用它们中的任何一个作为常量、函数名或类名。但是和其他语言不同的是,系统关键字可以在php中作为变量名称使用,不过这样容易混淆,所以最好还是不要以php关键字作为变量名称

<?php
  //输出123
  $echo = 123;
  echo $echo;
?>  

  下面是常用的php关键词列表

abstract  and  array  as  break  callable case  catch class  cloneconst continue  declaredefault  diedo  echo  else  elseif  emptyenddeclare  endfor  endforeach  endifendswitchendwhile  eval  exit  extends  final  finally  for  foreach  function  globalgoto  if  implements  include  instanceof  insteadof  interface  isset  list  namespacenew  or  print  private  protectedpublic  require return  static  switchthrow  traittry  unset  usevar  while  xor   yield   

变量赋值

  一般地,变量总是传值赋值,也就是说,将一个表达式的值赋予一个变量时,整个原始表达式的值被赋值到目标变量。这意味着,一个变量的值赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量

  [注意]虽然在PHP中并不需要初始化变量,但对变量进行初始化是个好习惯。未初始化的变量具有其类型的默认值——布尔类型的变量默认值是FALSE,整型和浮点型变量默认值是0,字符串型变量默认值是空字符串,数组变量的默认值是空数组

<?php
  $a1 = 123;
  $a2 = $a1;
  $a1 = 234;

  //输出234
  echo $a1;
  echo ‘<br>‘;

  //输出123
  echo $a2;
?>   

  php中提供了另外一种方式给变量赋值:引用赋值。这意味着新的变量简单地引用了原始变量。改动新的变量将影响到原始变量,反之亦然

  使用引用赋值,简单地将一个‘&‘符号加到源变量前即可

<?php
  $a1 = 123;
  $a2 = &$a1;
  $a1 = 234;

  //输出234
  echo $a1;
  echo ‘<br>‘;

  //输出234
  echo $a2;
?>  

可变变量

  一个变量的变量名可以动态地设置和使用。一个普通的变量通过声明来设置,而一个可变变量获取了一个普通变量的值作为这个可变变量的变量名

<?php
  $hi = ‘hello‘;
  $$hi = ‘world‘;
  echo "$hi $hello";//‘hello world‘
  echo "$hi ${$hi}";//‘hello world‘
?>

变量函数

  变量函数数量众多,一些函数会在后面博文再做相关介绍。现在,主要介绍isset()、unset()和var_dump()这三个函数

  var_dump()函数用来返回变量的类型和值

<?php
$p = 3.14;
var_dump($p);//float 3.14
$p = ‘abc‘;
var_dump($p);//string ‘abc‘ (length=3)
?>

  unset()函数用来释放指定的变量

<?php
$p = ‘abc‘;
echo $p;//‘abc‘
unset($p);
echo $p;//报错
?>

  isset()函数用来检测变量是否设置,当一个变量被设置为NULL或被释放,则返回true,否则返回false

<?php
$p = ‘abc‘;
var_dump(isset($p));//boolean true
$p = NULL;
var_dump(isset($p));//boolean false
unset($p);
var_dump(isset($p));//boolean false
?>
时间: 2024-10-10 05:13:17

前端学PHP之变量的相关文章

前端学PHP之变量、数据类型及作用域

目录 [1]变量 变量定义 变量赋值 [2]数据类型 字符串 整数 浮点数 布尔型 数组 对象 NULL 资源 [3]作用域 global static 变量 变量定义 变量是存储信息的容器,以$符号开头,其后是变量名称.变量名称必须以字母或下划线开头,对大小写敏感 <?php $x=5; //5 echo $x; //什么都不输出 echo $X; ?> 变量赋值 PHP没有创建变量的命令,变量会在首次为其赋值时被创建 <?php $txt="Hello world!&quo

从头开始学JavaScript (二)——变量及其作用域

原文:从头开始学JavaScript (二)--变量及其作用域 一.变量 ECMAscript变量是松散型变量,所谓松散型变量,就是变量名称可以保存任何类型的数据,每个变量仅仅是一个用于保存值的占位符. 定义:var firstDemo; 二.变量的作用域 2.1基本概念 使用var 定义变量:定义该变量的作用域的局部变量,这种定义变量的方法也被成为显式声明. 这么说不理解的话可以看看下面这个简单粗暴的例子: test();function test(){var firstDemo="hello

前端学PHP之Smarty模板引擎

前面的话 对PHP来说,有很多模板引擎可供选择,但Smarty是一个使用PHP编写出来的,是业界最著名.功能最强大的一种PHP模板引擎.Smarty像PHP一样拥有丰富的函数库,从统计字数到自动缩进.文字环绕以及正则表达式都可以直接使用,如果觉得不够,SMARTY还有很强的扩展能力,可以通过插件的形式进行扩充.另外,Smarty也是一种自由软件,用户可以自由使用.修改,以及重新分发该软件.本文将详细介绍Smarty模板引擎 概述 Smarty是一个php模板引擎.更准确的说,它分离了逻辑程序和外

零基础学python-16.3 变量名解析:LEGB原则

这一章节我们来说说变量名解析的原则:LEGB原则 1.当函数使用未认证的变量名时,python搜索4个作用域,本地作用域(L)->上一层结构中def或者lambda的本地作用域(E)->全局作用域(G)>内置作用域(B),并且在第一次找到这个变量名的地方停下来 2.函数给一个变量赋值的时候,总是创建或者改变本地作用域的变量名,除法他是声明为全局 >>> def test(): x=1 print(x) print(id(x)) x=2 print(x) print(id

零基础学python-6.1 变量、对象与引用

如果你曾经学习过c,java等静态语言,变量.对象等都需要定义类型,否则报错 在python里面,类型,是在运行中动态设定的 之前我们已经多次提到变量,我们在这里再次说一下: 我们以a=3为例子说明 1.变量的创建 先有了3这个整形对象,然后将3这个对象赋值给a这个变量,a这个变量只有初始化之后才能够使用 2.变量的类型 变量不会有与之关联的类型的信息或者约束,类型是存在与对象当中,例如上面的a=3,a是没有类型的,a的类型存在与3这个对象,如果是a='a',a的类型是字符串,说白了,a的类型取

零基础学python-3.2 变量赋值

这一节我们来详细展开变量赋值 1.下面我们举各种赋值的例子 anInt=12 anFloat=2.2 anStr='string' aList=['a','a','a'] anArray=(1,2,3) aMap={1:'a',2:'b',3:'c',} 2.链式赋值 3.增量赋值,也就是自增或者自减等 这些操作符:+=,-=,*=,/=,%=,**=,>>=,<<=,&=,|= x+=1 x=x+1 x*=1 4.多元赋值 使用元组多重赋值 a,b,c,d=(1,2,3,

前端学HTTP之网络基础

显示目录 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就不可能了解网站的本质.在学习HTTP之前,本文先介绍一些网络基础知识 网络 简单地说,网络就是在一定的区域内将两个或两个以上的计算机以一定的方式连接起来,以供用户共享文件.程序.数据等资源.下面就几种常见的网络类型及分类方法做简要介绍 1.按覆盖范围分 局域网(local area netwo

零基础学python-5.3 变量与除法

1.回顾一下变量 1)变量在它第一次赋值时创建 2)变量在表达式中使用将被替换为它们的值 3)变量在表达式中使用以前必须已经赋值 4)变量像对象一样不需要在一开始进行声明 我们下面把正反两种例子都举出来: 2.传统除法与地板除 传统除法:使用/ 地板除:使用//,等价于传统除法后使用math.floor方法 从上图我们可以得出以上结论 我们上面的结论是在python3.4上面实现的 我们对比一下python2.7与python3.4同样的表达式输出的结果 在python2.7与python3.4

前端学PHP之自定义模板引擎

什么是网站模板?准确地说,是指网站页面模板,即每个页面仅是一个板式,包括结构.样式和页面布局,是创建网页内容的样板,也可以理解为已有的网页框架.可以将模板中原有的内容替换成从服务器端数据库中动态内容,目的是可以保持页面风格一致 PHP是一种HTML内嵌式的在服务器端执行的脚本语言,所以大部分PHP开发出来的Web应用,初始的开发模板就是混合层的数据编程.虽然通过MVC设计模式可以把程序应用逻辑与网页呈现逻辑强制性分离,但也只是将应用程序的输入.处理和输出分开,网页呈现逻辑(视图)还会有HTML代