• 欢迎访问搞代码网站,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站!
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏搞代码吧

php传值赋值与引用赋值有什么区别?

php 搞代码 4年前 (2022-01-22) 13次浏览 已收录 0个评论

传值赋值:当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋予到目标变量。这意味着,例如,当一个变量的值赋予另一个变量时,改变其中一个变量的值,将不会影响到另一个变量。

<?php $<strong style="color:transparent">本&文来源gao@daima#com搞(%代@#码网@</strong><textarea>搞gaodaima代码</textarea>a=123; $a=123; $b=$a; $b=&$a; $a=321; $a=321; Echo”$a,$b”;//显示”321,123” Echo”$a,$b”;//显示”321,321” ?>

引用赋值:新的变量简单的引用了原始变量,改变新的变量将影响到原始变量使用引用赋值,简单地将一个&符号加到将要赋值的变量前(源变量)
类型戏法PHP 在变量定义中不需要(或不支持)明示的类型定义;变量类型是根据使用该变量的上下文所决定的。也就是说,如果把一个字符串值赋给变量 var ,var 就成了一个字符串。如果又把一个整型值赋给 var ,那它就成了一个整数。
类型强制转换
允许的强制转换有: (int),(integer) – 转换成整型 (bool),(boolean) – 转换成布尔型 (float),(double),(real) – 转换成浮点型 (string) – 转换成字符串 (array) – 转换成数组 (object) – 转换成对象 Settype()进行类型转换
函数Settype()

<?php $foo = "5bar"; // string $bar = true; // boolean settype($foo, "integer"); // $foo 现在是 5 (integer) settype($bar, "string"); // $bar 现在是 "1" (string) ?>

变量范围变量的范围即它定义的上下文背景(也就是它的生效范围)。大部分的 PHP 变量只有一个单独的范围。这个单独的范围跨度同样包含了 include 和 require 引入的文件。
静态变量变量范围的另一个重要特性是静态变量(static variable)。静态变量仅在局部函数域中存在,但当程序执行离开此作用域时,其值并不丢失。
数组PHP 中的数组实际上是一个有序图。图是一种把 values 映射到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组来使用,或列表(矢量),散列表(是图的一种实现),字典,集合,栈,队列以及更多可能性。因为可以用另一个 PHP 数组作为值,也可以很容易地模拟树。
定义 array() 可以用 array() 语言结构来新建一个 array。它接受一定数量用逗号分隔的 key => value 参数对。
array( key => value , … )
// key 可以是 integer 或者 string
// value 可以是任何值

<?php // 现在删除其中的所有单元,但保持数组本身的结构 // 创建一个简单的数组 foreach ($array as $i => $value) { $array = array(1, 2, 3, 4, 5); unset($array[$i]); print_r($array); } print_r($array); // 添加一个单元(注意新的键名是 5,而不是你可能以为的 0) $array[] = 6; print_r($array); // 重新索引: $array = array_values($array); $array[] = 7; print_r($array); ?>

unset() 函数允许取消一个数组中的键名。要注意数组将不会重建索引。

<?PHP $a = array( 1 => 'one', 2 => 'two', 3 => 'three' ); unset( $a[2] ); /* 将产生一个数组,定义为 $a = array( 1=>'one', 3=>'three'); 而不是 $a = array( 1 => 'one', 2 => 'three'); */ $b = array_values($a); // Now $b is array(0 => 'one', 1 =>'three') ?>

以上就是php传值赋值与引用赋值有什么区别?的详细内容,更多请关注搞代码gaodaima其它相关文章!


搞代码网(gaodaima.com)提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发送到邮箱[email protected],我们会在看到邮件的第一时间内为您处理,或直接联系QQ:872152909。本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:php传值赋值与引用赋值有什么区别?
喜欢 (0)
[搞代码]
分享 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址