php 传值赋值和引用赋值笔记

传值赋值:是把实参的值赋值给行参 ,那么对行参的修改,不会影响实参的值.
例如:根copy是一样的。打个比方,我有一?H房子,我给你建筑材料,你建了一个根我的房子一模一样的房子,你在你的房子做什么事都不会影响到我,我在我的房子里做什么事也不会影响到你,彼此独立。

 代码如下 复制代码

$aa=1;
$bb=2;
$aa=$bb;//$aa和$bb互不相干
$aa=3;
echo $aa,'--',$bb;//输出3--2

引用赋值:真正的以地址的方式传递参数传递以后,行参和实参都是同一个对象,只是他们名字不同而已对行参的修改将影响实参的值
例如:让我想起了上大学时学习C语言的指针了,感觉差不多。打个比方,我有一?H房子,我给你一把钥匙,我们二个都可以进入这个房子,你在房子做什么都会影响到我。

 代码如下 复制代码

$aa=1;
$bb=2;
$aa=&$bb;//$bb引用内容指向$aa,不管$aa,或者$bb发生变化,彼此都会变化
$aa=3;
echo $aa,'--',$bb;//输出3--3

时间: 2024-09-10 11:36:14

php 传值赋值和引用赋值笔记的相关文章

php 传值赋值与引用赋值的区别_php技巧

传值赋值:当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋予到目标变量.这意味着,例如,当一个变量的值赋予另一个变量时,改变其中一个变量的值,将不会影响到另一个变量. 复制代码 代码如下: <?php <?php $a=123; $a=123; $b=$a; $b=&$a; $a=321; $a=321; Echo"$a,$b";//显示"321,123" Echo"$a,$b";//显示"321,321&q

php 赋值和引用赋值使用说明

1.值赋值:将赋值表达式的值复制到变量.例子:  代码如下 复制代码 $number=15; $age=20; $sum=12+"15";//$sum=27 2.创建数组有变量赋值和调用函数两种方法,这里先讲前者. 使用变量赋值方法很简单,直接给一个数组变量赋值即可. 实例:  代码如下 复制代码  <?php  $lang[]="php";  $lang[]="html";  $lang[]="css";  echo

javascript引用赋值(地址传值)用法实例_javascript技巧

本文实例讲述了javascript引用赋值(地址传值)用法.分享给大家供大家参考.具体如下: javascript在默认情况下,数组.对象和函数是引用赋值,如下代码所示: 复制代码 代码如下: <html> <head> <script type="text/javascript"> var a={age:20,height:175}; var b = a; alert(b.age); b.age = 25; alert(a.age); </s

c-刚学C++,有些关于自增运算符跟引用赋值的问题,望各位大神帮忙解答一下

问题描述 刚学C++,有些关于自增运算符跟引用赋值的问题,望各位大神帮忙解答一下 #include using namespace std; int main() { int a = 2; int c = 2; int & b = a++; int & d = ++c; cout<<a<<","<<b<<endl; cout<<c<<","<<d<<end

深入理解PHP中赋值与引用

原文:深入理解PHP中赋值与引用           先看下面的问题: <?php $a = 10;//将常量值赋给变量,会为a分配内存空间 $b = $a;//变量赋值给变量,是不是copy了一份副本,b也分配了内存空间呢? $c = &$a;//引用是不会为c分配空间的,c和a是共用一份空间的. ?> 对于中间的那个问题,你的答案是什么呢?在今天之前,我的答案是会为b分配内存空间.因为我是这么理解的: &赋值的时候,视为一个变量定义了一个别名,增加了一个对内存空间的引用.改

我对java到底传值还是传引用的理解

不少同学总是质疑java编程中参数的传递,到底是传值还是传引用?总是模棱两可,导致编程涉及到 这方面时很苦恼,关于这个问题,我在这里记述一下我的理解,欢迎批评指正. 首先锁定一个根本方向:java中只有传值! 这里就有同学纳闷了,只有传值还要传引用这一说法干吗?为了便于理解,我们又可以这样说: 在java中,简单数据类型是按值传递的,对象是按引用传递的...晕,这人怎么说话颠三倒四的, 唐僧了....哈哈,莫急,听我慢慢道来.... 1. 所谓传值,压栈的是参数值的副本,是把实参的值赋值给形参,

Java究竟是传值还是传引用?

1. 简单类型是按值传递的 Java 方法的参数是简单类型的时候,是按值传递的 (pass by value).这一点我们可以通过一个简单 的例子来说明: public class Test { public static void test(boolean test) { test = ! test; System.out.println("In test(boolean) : test = " + test); } public static void main(String[]

java及C++中传值传递、引用传递和指针方式的理解_java

java的值传递理解: 代码1: public class Test { /** * @param args */ public static void main(String[] args) { StringBuffer buffer= new StringBuffer("colin"); SChange(buffer); System.out.println( buffer); } public static void SChange (StringBuffer str) { st

sql语句优化 传参-SQL语句传参赋值与直接赋值,为什么速度差那么远?

问题描述 SQL语句传参赋值与直接赋值,为什么速度差那么远? 传参的花了我30秒 直接赋值的花了不到一秒 求各位大神帮个忙解答一下,这条SQL语句必须要传参的,因为有很多不同的参数值,要怎么优化才好啊