亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

以最短的方式將所有PHP型別轉(zhuǎn)換為字串
P粉369196603
P粉369196603 2023-09-05 15:34:44
0
1
1217
<p>我正在編寫(xiě)一個(gè)通用系統(tǒng),希望有一天可以應(yīng)用於醫(yī)學(xué)等領(lǐng)域(即它是「科學(xué)的」)。 </p> <p>我認(rèn)為最好的方法是用字串在php中表示所有資料(true將是“true”,false將是“false”,依此類(lèi)推)。這樣做的原因是在php中任何值都有唯一的字串表示(例如php程式碼本身)。 </p> <p>我發(fā)表這個(gè)問(wèn)題是為了加速這個(gè)程式的設(shè)計(jì)過(guò)程。 </p> <p>有些值很容易轉(zhuǎn)換成字串:數(shù)字、布林值等。 </p> <p>有些不容易:物件、陣??列、資源。 </p> <p>我認(rèn)為傳輸物件和陣列的格式基本上是json,但我不確定是否完全匹配。這比我目前擁有的(什麼都沒(méi)有)要好,但至少在某個(gè)時(shí)候,我想將其精煉到一個(gè)點(diǎn)。 </p> <p>有什麼想法嗎? </p>
P粉369196603
P粉369196603

全部回覆(1)
P粉615886660

這確實(shí)是一個(gè)雄心勃勃的目標(biāo);如此雄心勃勃以至於嘗試是愚蠢的。

現(xiàn)在,你可能並不是真的意味著“可以為任何人做任何事”,但你在嘗試表示的時(shí)候沒(méi)有設(shè)定任何限制是與你的問(wèn)題相關(guān)的。這使得你在尋找序列化格式方面變得不必要地困難。

例如,你提到了資源,PHP用於諸如資料庫(kù)連線、開(kāi)啟檔案句柄等的東西。它們是對(duì)一些存在一會(huì)兒然後消失的東西的短暫指針,對(duì)它們進(jìn)行序列化不僅在PHP中不受支持,而且?guī)缀鯖](méi)有意義。

與其試圖涵蓋“一切”,你需要考慮你實(shí)際上需要處理哪些類(lèi)型的資料。也許你主要會(huì)使用系統(tǒng)內(nèi)定義的類(lèi),所以你可以定義任何你想要的格式來(lái)表示它們。也許你想要處理任意的鍵值對(duì)集合,以PHP數(shù)組的形式。你可能希望為將來(lái)的擴(kuò)展留下餘地,但這只是關(guān)於格式的靈活性,而不是現(xiàn)在就有一個(gè)具體的答案。

從那裡開(kāi)始,你可以尋找你想要的屬性,並四處逛逛:

  • JSON是一個(gè)非常受歡迎的「最低公共分母」格式。它的主要缺點(diǎn)是它沒(méi)有表示特定自訂類(lèi)型的方式,一切都必須由列表和鍵值對(duì)組成(我喜歡說(shuō)「JSON沒(méi)有類(lèi)別」)。
  • XML比它過(guò)去流行了一些,但非常強(qiáng)大,可以用於定義自訂語(yǔ)言和類(lèi)型。它相當(dāng)冗長(zhǎng),但壓縮效果很好 - 很多現(xiàn)代檔案格式實(shí)際上是包含壓縮的XML檔案的zip歸檔。
  • PHP序列化格式其實(shí)只適用於短期的應(yīng)用程式內(nèi)目的,例如快取資料。它相當(dāng)簡(jiǎn)潔,並與PHP的類(lèi)型系統(tǒng)密切相關(guān),但如果使用者對(duì)資料有影響力,則存在安全問(wèn)題,如unserialize手冊(cè)頁(yè)面中所述。
  • 甚至還有更簡(jiǎn)潔的格式,它們不僅限於人類(lèi)可讀的表示,如果這對(duì)你來(lái)說(shuō)是一個(gè)相關(guān)因素的話。

顯然,列表是無(wú)窮無(wú)盡的...

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板