最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

php 多個變量指向同一個引用($b = &$a)用法分析

 更新時間:2019年11月13日 09:58:43   作者:傾聽歲月  
這篇文章主要介紹了php 多個變量指向同一個引用($b = &$a)用法,結(jié)合實例形式分析了PHP變量引用原理、優(yōu)缺點及相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了php 多個變量指向同一個引用($b = &$a)用法。分享給大家供大家參考,具體如下:

引用是什么?
引用就是多個變量指向同一個內(nèi)存區(qū)域地址。如我們經(jīng)常用的實例一個類,就是內(nèi)存中開辟了一個區(qū)域存儲實例的類,實例賦值給變量就是讓這個變量指向這個內(nèi)存區(qū)域。

多個變量指向同一個引用有什么好處?
節(jié)約了內(nèi)存空間,多個變量指向同一個內(nèi)存地址,在調(diào)用的時候多個變量都是指向的同一個內(nèi)存地址。

多個變量指向同一個引用的缺點
要注意使用安全,即是由于多個變量都是指向的同一個內(nèi)存地址,其中一個變量更改了某個屬性,其它的變量調(diào)用的時候都是用的已經(jīng)更改的實例。

在php 中我們?yōu)橐粋€變量賦值的時候會在內(nèi)存中開辟一個區(qū)域存儲該值。那么我們將這個變量賦值給另一個變量的時候會在內(nèi)存中重新開辟一個區(qū)域去存儲改值嗎? 我做了如下實驗

<?php
$d = "aaa";
$c = $d;
echo $c . "<br />";
$d = "bbb";
echo $c . "<br />";
/**
 * 執(zhí)行結(jié)果是
 * aaa
 * aaa
 */
?>

看到這里 不知道你理解了沒有,創(chuàng)建的變量$d 并為之賦初始值aaa 再將$d 賦值給$c,之后輸出$c 然后更改$d的值,在輸出$c。這個實驗告訴我們,$d再給$c賦值的時候是在內(nèi)存中重新開辟了一個區(qū)域的。

那么,我們怎么才能讓$d和$c 都指向一個引用呢? 查了下資料 如下方法 讓兩個變量指向同一個內(nèi)存地址

<?php
$a = "123";
$b = &$a;
echo $b."<br />";
$a = "456";
echo $b;
/**
 * 運行結(jié)果如下
 * 123
 * 456
 */
?>

我更改了一下變量的名字。方便測試發(fā)現(xiàn)區(qū)別。在這里我們可以看到 $b=&$a 其中&符號的作用就是讓$b 指向的是$a的內(nèi)存區(qū)域,而不是重新開辟一個區(qū)域。所以當更改$a的值的時候$b也會隨著變化。

前面我們實驗的對象是基本字符串,現(xiàn)在我們來看下類是否遵從這個規(guī)則

<?php
class Demo
{
  public $demo = "aaaa";
}
$demo1 = new Demo();
$demo2 = $demo1;
echo $demo2->demo . "<br />";
$demo1->demo = "bbbb";
echo $demo2->demo . "<br />";
/**
 * 運行結(jié)果
 * aaaa
 * bbbb
 */
?>

我這里并沒有&符號指定$demo2必須指向$demo1 的內(nèi)存區(qū)域,所以關(guān)于類,當一個實例變量賦值給另一個變量的時候默認就是兩個變量指向同一個引用;

php 的引用我覺得沒有 java的好用,也許是這門語言本身還在發(fā)展,很多處理還沒有那么方便完善。 java初去基本數(shù)據(jù)類型(int、long、byte、short、char、boolean、float、double等),兩個變量賦值都是指向同一個內(nèi)存地址,而且不用你特意去指定。

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結(jié)》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總

希望本文所述對大家PHP程序設(shè)計有所幫助。

相關(guān)文章

  • php簡單創(chuàng)建zip壓縮文件的方法

    php簡單創(chuàng)建zip壓縮文件的方法

    這篇文章主要介紹了php簡單創(chuàng)建zip壓縮文件的方法,實例分析了php基于ZipArchive實現(xiàn)文件壓縮的相關(guān)技巧,需要的朋友可以參考下
    2016-04-04
  • PHP與SQL注入攻擊防范小技巧

    PHP與SQL注入攻擊防范小技巧

    SQL注入攻擊是黑客攻擊網(wǎng)站最常用的手段。如果你的站點沒有使用嚴格的用戶輸入檢驗,那么常容易遭到SQL注入攻擊。SQL注入攻擊通常通過給站點數(shù)據(jù)庫提交不良的數(shù)據(jù)或查詢語句來實現(xiàn),很可能使數(shù)據(jù)庫中的紀錄遭到暴露,更改或被刪除。
    2011-09-09
  • PHP中使用asort進行中文排序失效的問題處理

    PHP中使用asort進行中文排序失效的問題處理

    asort() 函數(shù)對數(shù)組進行排序并保持索引關(guān)系。主要用于對那些單元順序很重要的結(jié)合數(shù)組進行排序??蛇x的第二個參數(shù)包含了附加的排序標識。如果成功則返回 TRUE,否則返回 FALSE。
    2014-08-08
  • PHP設(shè)計模式之工廠模式(Factory Pattern)的講解

    PHP設(shè)計模式之工廠模式(Factory Pattern)的講解

    今天小編就為大家分享一篇關(guān)于PHP設(shè)計模式之工廠模式(Factory Pattern)的講解,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-03-03
  • php 判斷網(wǎng)頁是否是utf8編碼的方法

    php 判斷網(wǎng)頁是否是utf8編碼的方法

    這篇文章主要介紹了php 判斷網(wǎng)頁是否是utf8編碼的方法,需要的朋友可以參考下
    2014-06-06
  • php接口技術(shù)實例詳解

    php接口技術(shù)實例詳解

    這篇文章主要介紹了php接口技術(shù),結(jié)合實例形式分析了php接口的基本概念、功能、定義、使用方法與相關(guān)注意事項,需要的朋友可以參考下
    2016-12-12
  • APACHE的AcceptPathInfo指令使用介紹

    APACHE的AcceptPathInfo指令使用介紹

    從APACH2.0.30以上服務器中去掉了acceptpathinfo;如果需要的話需要在http.conf中添加AcceptPathInfo On這一條
    2013-01-01
  • php實現(xiàn)首頁鏈接查詢 友情鏈接檢查的代碼

    php實現(xiàn)首頁鏈接查詢 友情鏈接檢查的代碼

    網(wǎng)站首頁超鏈接反查 友情鏈接查詢 外鏈查詢 ,對于其中的思路
    2010-01-01
  • ThinkPHP防止SQL注入攻擊的方法

    ThinkPHP防止SQL注入攻擊的方法

    在ThinkPHP中,參數(shù)綁定是一種安全的方式,用于處理用戶輸入,特別是在構(gòu)建數(shù)據(jù)庫查詢時,參數(shù)綁定可以防止SQL注入攻擊,所以本文將給大家介紹了ThinkPHP防止SQL注入攻擊的方法,需要的朋友可以參考下
    2023-12-12
  • php上傳后臺無法收到數(shù)據(jù)解決方法

    php上傳后臺無法收到數(shù)據(jù)解決方法

    在本篇文章里小編給大家整理的是關(guān)于php無法收到數(shù)據(jù)的相關(guān)知識點內(nèi)容,有需要的朋友們參考學習下。
    2019-10-10

最新評論

广元市| 合江县| 平乡县| 根河市| 治县。| 施甸县| 会泽县| 遵义县| 绥宁县| 长岛县| 泰和县| 阜阳市| 甘南县| 玛纳斯县| 北京市| 永泰县| 金坛市| 九龙城区| 永平县| 蕉岭县| 屯留县| 贵定县| 汕头市| 中超| 丹巴县| 肥西县| 大邑县| 绥中县| 宝丰县| 芮城县| 白朗县| 涞水县| 贵溪市| 外汇| 南乐县| 宣汉县| 南投县| 邹城市| 盈江县| 新营市| 城市|