आप अपनी जरूरत के अनुसार मोंगो प्रकार हैश या संग्रह का उपयोग कर सकते हैं।
हैश: स्टोर को एसोसिएटिव सरणी के रूप में स्टोर और पुनर्प्राप्त करता है।
संग्रह: स्टोर को संख्यात्मक अनुक्रमित सरणी के रूप में स्टोर और पुनर्प्राप्त करता है।
उदाहरण के लिए:
use Doctrine\ODM\MongoDB\Mapping\Annotations as MongoDB;
class Category
{
/**
* @MongoDB\Field(name="tags", type="collection")
*/
private $tags;
/**
* @MongoDB\Field(name="country_wise_total_count", type="hash")
*/
private $country_wise_total_count;
}
डेटा संग्रहीत किया जाता है जैसे:
"tags": [
"man",
"boy",
"male",
"sandal",
"cloth",
"army boots",
"boots",
"sport shoes",
"school",
"casual",
"office"
],
"country_wise_total_count": {
"NP": NumberInt(7),
"US" : NumberInt(10)
}
मुझे धन्यवाद के लिए काम किया। यह स्पष्ट नहीं है कि यह दस्तावेज़ों में निर्दिष्ट क्यों नहीं है http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/basic-mapping.html#doctrine-mapping-types –
किस प्रकार का मैपिंग का उपयोग किसी अन्य कुंजी को जोड़ने के लिए सरणी को अद्यतन करने के लिए करना चाहिए: मान तत्व? – Sekai
@ सेकाई: मुझे सवाल समझ में नहीं आया। 'संग्रह' प्रकार, MongoDB फ़ील्ड को लिखने से पहले 'array_values ()' के माध्यम से PHP मान को चलाता है (संख्यात्मक रूप से कुंजी को पुन: संशोधित करने के लिए)। 'हैश' रणनीति किसी ऑब्जेक्ट (यानी PHP में stdClass) को PHP मान को बीएसओएन ऑब्जेक्ट के रूप में सहेजने के लिए सुनिश्चित करती है। संग्रह/हैश मानों में से कोई भी कुंजी/मूल्य जोड़े मैप किए गए हैं (यह इन्हें एम्बेडेड दस्तावेज़ों (एंबेडेन और एंबेडेनी) से अलग करता है। – jmikola