好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>后端语言>PHP
<tfoot draggable='sEl'></tfoot>

php赋值后改变 php变量赋值

很多站长朋友们都不太清楚php赋值后改变,今天小编就来给大家整理php赋值后改变,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 详解PHP变量传值赋值和引用赋值变量销毁 2、 PHP 赋值问题 3、 php如何赋值 4、 php赋值后 数组元素发生变化是什么原因?大神啊~~ 5、 Php赋值运算的疑惑 6、 在php中$a = $b; 和$a = &$b; 的区别? 详解PHP变量传值赋值和引用赋值变量销毁

本文实例为大家分享了PHP变量传值赋值和引用赋值变量销毁的具体代码,供大家参考,具体内容如下

<?php

$a

=

100;

$b

=

200;

var_dump($a,$b);

//int(100)

int(200)

?>

php中,上面的代码,变量是怎么存放的呢?

上面的代码变动下,将变量b赋值给变量a,会发生什么?

<?php

$a

=

100;

$b

=

200;

$a

=

$b;/*多了这个*/

var_dump($a,$b);

//int(200)

int(200)

?>

问题来了,$a

=

$b,那么是将变量a的指针指向了变量b指针所指向的位置?还是变量a指向的位置的值变了?

引用赋值和上面传值赋值不同,引用赋值是两个变量指向一个地方,一旦这样,一改俱改。

怎么引用赋值呢?变量名前加即可,

$a

=

$b;

这样赋予变量a的就不仅仅是变量b的值,而是变量b的地址,变量a和变量b共同指向一个地址。

<?php

$a

=

100;

$b

=

200;

$a

=

$b;

var_dump($a,$b);

//int(200)

int(200)

/*变量b引用赋值给变量a后,ab指向同一个地址,将会一改俱改,如下:*/

$a

=500;

var_dump($a,$b);//int(500)

int(500)

一改俱改

$b

=

700;

var_dump($a,$b);//int(700)

int(700)

一改俱改

?>

<?php

/*理解下面的话*/

$a

=

100;

//变量a赋值int

100

,100是基础数据类型,不是变量,是存在变量指向位置的

$a

=

$b;

//变量b的值

赋值

给变量a,变量a,b各有各的指向,执行之后,各是各的。

$a

=

$b;

//变量b的值的地址

赋值给变量

a

,变量a,b共用一个地址哦!一改俱改!

?>

<?php

/*

php中unset()是用来销毁变量的,但很多时候,unset()只把变量给销毁了,

内存中存放的该变量的值仍然没有销毁,也就是没能达到我们想要的释放内存的效果。

这里可以用

变量=null

的方法来释放其内存

unset也会释放内存的情况

1.

在变量值所占空间超过255字节长的时候,unset(变量)才会释放内存

2.

只有当指向该值的所有变量都被销毁后,地址才会被释放(比如$a,$b都指向该值,仅仅unset($a);是不释放的,$b还是正常存在的)(也要执行1的判断)

*/

$a

=

200;

$b

=

$a;

unset($a);

var_dump($a,$b);

//NULL

int(100)

?>

上面的代码,执行到unset($a)时候,就是将变量a的指向断开,同时将变量a扔出花名册,从下图可以看出,对变量b是没有影响的。

但是,如果用$a

=

null;这种方式销毁变量时,将会有如下影响:

<?php

$a

=

100;

$b

=

$a;

$a

=

null;

var_dump($a,$b);

//NULL

NULL

?>

这种方式,释放了内存,但是共用一个地址的另一个变量也受到了影响。

看看这两种方式在数组上的应用:

<?php

$aaa

=

array(

'a'=>1,

'b'=>2

);

unset($aaa['a']);

print_r($aaa);

//Array

(

[b]

=>

2

)

,用unset,数组中这一项不存在了

$bbb

=

array(

'a'=>1,

'b'=>2

);

$bbb['a']

=

null;

print_r($bbb);

//Array

(

[a]

=>

[b]

=>

2

)

,用

=

null,数组中这一项还存在,只是为空了

?>

以上所述是小编给大家介绍的PHP变量传值赋值和引用赋值变量销毁详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:PHP生成短网址的思路以及实现方法的详解PHP错误提示It

is

not

safe

to

rely

on

the

system……的解决方法PHP随机数函数rand()与mt_rand()的讲解php微信扫码支付

php公众号支付PHP实现支持CURL字符串证书传输的方法PHP使用OB缓存实现静态化功能示例PHP使用mysqli同时执行多条sql查询语句的实例PHP中命名空间的使用例子PHP

SESSION机制的理解与实例PHP自动载入类文件函数__autoload的使用方法

PHP 赋值问题

会的,代码的执行顺序是从上到下执行的,赋值给$subject就是在内存中开拓一块内存块,作为$subject的内存区域,当第二次赋值时,第一次依据申请了内存空间,就会去找那块内存,而不会继续申请新的内存块,于是这个内存块中的数据就被覆盖了

php如何赋值

PHP赋值有多种情况:

直接赋值:赋值符号"=" ,赋值符号前面的是变量,后边的是赋的值;示例如下:

<?php

$a=10;

$b='baiduzhidao';

?

传递赋值:将一个表达式的值赋予一个变量(改变其中一个变量的值,不会影响到另一个变量的值);示例如下:

<?php

$num1=100;

$num2=$num1;//传值赋值后,$num2的值为:100

?

引用赋值:赋值符号"",当新的变量引用了原始变量的值后,如果改变新的变量将影响到原始变量。示例如下:

<?php

$a=3;

$b=5;

$a=$b;        //把$b的地址赋值给$a, 这时$a的值也是5了。如果修改$b的值,那么$a的值也会发生变化。

?>

php赋值后 数组元素发生变化是什么原因?大神啊~~

麻烦把相关语句都帖出来,目前的信息找不到原因。

调试的时候建议用print_r把变量或者数组输出,查找原因。

Php赋值运算的疑惑

我晕,你把上面一条条分别测试就知道了。

你拿来一起测试,不小心大家还真被弄糊涂了。

x=3; y=5;

执行$x += $y后:$x = 8

5+3=8 对呀;

执行$x -= $y后:$x = 3

8-5=3 对呀; 注意,x已经是8了,不是3了

执行$x *= $y后:$x = 15

3*5=15 对呀;

执行$x /= $y后:$x = 3

15/5=3 对呀 注意,x已经是15了,不是3了

执行$x %= $y后:$x = 3

3%5 余3 对呀

你可能以为x一直等于3,是吧? 你不停给x赋值,x值是不停地变动的。

在php中$a = $b; 和$a = &$b; 的区别?

在php中是引用的意思,PHP 的引用允许用两个变量来指向同一个内容。意思是,当这样做时:

<?php

$a = $b;

?>

这意味着 $a 和 $b 指向了同一个变量。 $a 和 $b 在这里是完全相同的,这并不是 $a 指向了 $b 或者相反,而是 $a 和 $b 指向了同一个地方。

关于php赋值后改变的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php赋值后改变 php变量赋值的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did255343
更新时间:2023-10-09   阅读:50次

上一篇: php获取数组坐标 php获取数组的值

下一篇:php7性能tu Php性能

相关资讯

最新资料更新

  • 1.怎么写php需求 php市场需求
  • 2.phpisset多个值 php __set __get
  • 3.php加密12进 php加密解密
  • 4.proxy.php proxyphp?url
  • 5.登录注册的php代码 php用户注册登录代码
  • 6.phpword读写 php读写word 文档
  • 7.扫描登录php代码 扫描登录php代码错误
  • 8.php延迟0.1 php延迟执行不影响页面展示
  • 9.php正则获取图片 php使用正则表达式
  • 10.红帽升级php 红帽linux最新版
  • 11.php梗怎么来的 php是什么意思饭圈
  • 12.php网站+iis php网站有哪些
  • 13.php变量内存溢出 php 内存限制
  • 14.口袋源码php下载 口袋com
  • 15.php换文字颜色 php文字颜色代码
  • 16.php写循环下拉页面 php下拉菜单的代码
  • 17.php每天更新数据 php数据库更新语句
  • 18.phpvc6vc9的简单介绍
  • 19.php单个会话内存 php会话保存数据的两种方式是
  • 20.php查询数组找到 php查找数组元素

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://www.haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]