2012-12-27 60 views
2

我開始一個使用couchbase(一個以json格式存儲對象的noSQL數據庫)和php一起使用的新項目。json和php之間的映射器類

問題是,如果我可以將json映射到我自己的php類(反之亦然),那麼使用它們將非常容易。

你知道任何圖書館嗎?

+1

這不是標準的PHP的couchdb客戶端庫嗎?你試過什麼了?你現在怎麼做? – hakre

+0

在任何情況下,從json_decode開始,將您的json對象變成stdClass。 –

+0

那麼,couchbase提供了一個方法(視圖(「東西」,「東西」))已經做了json_decode。到目前爲止,我已經有了一個php結構。 問題是我需要在自己的類屬性中映射這些json屬性。 假設json在中間有這樣的東西:...「foo」:「aloha123」,「bar」:bye123「... 在我的課程中,我有一個屬性foo和另一個屬性欄,我需要映射器將這些值放入我自己的類屬性中 我可以實現一個這樣做的映射器(到目前爲止我所擁有的),但是我想知道是否已經存在更復雜的東西 – ThisIsErico

回答

2

一開始的方法就是看(或使用)的「地下室」庫,可在這裏: https://github.com/Basement/Basement

此庫使用json_decode /編碼。 希望能幫到你。

+0

這是值得的!但可悲的是,它不是我要找的:( Thx Tug! – ThisIsErico

0

Tug已經提到了Basement,它將在不久的將來爲您提供「模型」的功能,就像您從ORM系統瞭解的那樣。

除此之外,由於json_encode/decode的本質,將簡單的舊php對象映射爲JSON非常容易。既然你可以傳遞一個任意的對象,它將把它存儲爲JSON,這基本上是你需要的唯一東西。如果您需要更多關於JSON和PHP的信息,我的博客帖子是一個很好的開始:http://nitschinger.at/Handling-JSON-like-a-boss-in-PHP

如果您使用Basement,它使它更容易一些,因爲它允許您在後臺將PHP類型轉換爲JSON自動(或根據需要編寫自己的映射器)。

如果你有一個特定的例子,你想建立,讓我知道,我很樂意提供一個例子!

2

您可以使用我們的JSONmapper從JSON映射到您的PHP類。 不幸的是它不支持映射回(尚)。