溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

php中資源類型變量指的是什么

發(fā)布時間:2021-06-09 13:59:18 來源:億速云 閱讀:166 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關php中資源類型變量指的是什么的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

1、概念

資源類型變量是PHP中最復雜的變量,也是復合型結構。PHP的zval可以表示廣泛的數(shù)據(jù)類型,但是很難充分說明自定義的數(shù)據(jù)類型。由于這些復合結構沒有有效的描繪,也沒有辦法使用傳統(tǒng)的操作符號。為了解決這個問題,本質上只需要任意的標志引用指針,這種方法被稱為資源。

2、使用說明

(1)注冊:關于定制的數(shù)據(jù)類型,我想把它作為資源。首先需要注冊,zend分配全球唯一的標志。

(2)獲得資源變量:對于資源,zend維持了id->實際數(shù)據(jù)的hash_tale。關于resource,zval只記錄了id。fetch時,通過id在hash_table中找到具體值返回。

(3)資源銷毀:資源的數(shù)據(jù)類型多種多樣。Zend本身沒有辦法銷毀它。因此,用戶需要在注冊資源時提供銷毀函數(shù)。unset資源時,zend調用相應的函數(shù)完成分析結構。同時從全局資源表中刪除。

(4)資源可以長期停留,不僅在所有引用的變量超過作用域后,還在一個請求結束后產(chǎn)生新的請求。這些資源被稱為持久資源。除非特意銷毀,否則它們將繼續(xù)存在SAPI的整個生命周期。在許多情況下,持久資源可以在一定程度上提高性能。例如,我們常見的mysql_pconnect,持續(xù)資源通過pemalloc分配內存,請求結束時不會被釋放。對于zend來說,兩者本身是沒有區(qū)別的。

感謝各位的閱讀!關于“php中資源類型變量指的是什么”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內容。

php
AI