php变量设置值的方式有哪些

发布时间:2021-08-09 13:48:34 作者:小新
来源:亿速云 阅读:154

这篇文章给大家分享的是有关php变量设置值的方式有哪些的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

首先我们需要了解一下变量,这样才能更好的了解变量的赋值方式。

变量通俗的来说是一种容器,是临时存储值的容器,它可以储存数字、文本、或者一些复杂的数据等;这些数据,就是“变量值”。且根据变量类型不同,容器的大小不一样,存放的数据大小也是不相同的。

因为PHP是一种弱类型的语言,所以使用变量前不用提前声明,在第一次赋值时会被自动创建。PHP中的变量用一个美元符号“$”后面跟变量名来表示(注:变量名是区分大小写的)。

例:

<?php
    $name = '西门庆';
    $_age = 25;
    $sex = '男';        
    echo "姓名:{$name},年龄:{$_age}, 性别:{$sex}";
?>

PHP变量名并不是可以随意定义的,它遵循一定的命名规则,通常是以字母(A~z)或下划线(_)开头,由字母、数字(0~9)、下划线组成。

例如下面的变量声明就是错误的:

$1sex = '男';  // 错误,不能以数字开头

一般PHP变量在声明时,就进行了赋值操作,下面我们就来了解一下PHP变量的赋值方式。

PHP中有两种传值方式,分别为传值赋值引用赋值

1、传值赋值

“传值赋值”是PHP中默认的传值方式,可以像上文那样使用“=”运算符直接将值赋给变量

<?php
    $a = 1; 
?>

也可以将一个变量的值,赋予给另一个变量。我们看看下面这个例子:

<?php
$a = 100;
$b = $a;    // 将$a的值复制一份,传给$b
echo '$a = '.$a;
echo '<br> $b = '.$b;
?>

输出结果:

$a = 100
$b = 100

需要注意的是:赋予变量值的方式,其实是将一个变量的值,“复制”一份,再传给另一个变量。本质上这两个变量是相互独立的,因此改变其中一个变量的值,将不会影响到另外一个变量。看看下面这个例子:

<?php
$a = 100;
$b = $a;    // 将$a的值复制一份,传给$b
$a = 200;   // 重新为 $a 赋值
echo '$a = '.$a;
echo '<br> $b = '.$b;
?>

我们来看看输出结果:

$a = 200
$b = 100

但有时我们就需要,改变其中一个变量的值,另外一个变量也跟着改变,这样怎么办?那就需要使用“引用赋值”了。

2、引用赋值

“引用赋值”简单来说就是:新的变量引用了原始的变量。它会将一个变量的内存地址,“复制”一份,传给另一个变量。

这也就意味着,两个变量是有关联的,改变了新的变量的值将影响到原始的变量的值,反之亦然。

“引用赋值”和“传值赋值”差不多,只是多了一步:在需要在被引用的变量(源变量)前加上“&”符号(C语言中称之为取地址符)。

<?php
$a = 100;
$b = &$a;     // 将$a的地址复制一份,传给$b
$a = 200;   // 重新为 $a 赋值
echo '$a = '.$a;
echo '<br> $b = '.$b;
?>

通过取地址符&,变量$a和变量$b的值指向了同一个内存地址,当我们修改其中一个变量的值时,另一个变量的值自然而然的随之被改变。我们来看看输出结果:

$a = 200
$b = 200

注:只有有名字的变量才可以引用赋值。

<?php
$foo = 25;
$bar = &$foo;      // 合法的赋值
$bar = &(24 * 7);  // 非法; 引用没有名字的表达式
?>

(24*7)这个表达式中因为没有保存在变量中,所以没有明确的内存地址,通过取地址符去获取在内存中存储的地址是不可取的。我们来看看输出结果:

php变量设置值的方式有哪些

感谢各位的阅读!关于“php变量设置值的方式有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

推荐阅读:
  1. php变量布尔值验证
  2. PHP内核定义变量的方式

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php

上一篇:python爬虫时提取数据后跟踪到下一个链接报错怎么办

下一篇:Python中怎么实现一个微信防撤回功能

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》