यह कोड अंग्रेजी, स्पेनिश और जर्मन ordninal संख्याओं के लिए काम करता है, लेकिन रूसी या इतालवी ordninal संख्या के साथ यह काम नहीं करता है।संख्याफॉर्मेटर :: रूसी और इतालवी में SPELLOUT वर्तनी-ordinal
'ru-RU'
, 'it-IT'
भी
मैं में के लिए रूसी उदाहरण के लिए मिलता है काम नहीं करते 2 -> два (इस कार्डिनल संख्या है), लेकिन मुझे क्रमसूचक संख्या चाहते हैं और यह यहाँ होगा 2 -> второй ।
मुझे इतालवी में उदाहरण के लिए 2 -> देय (यह कार्डिनल नंबर है), लेकिन मुझे क्रमिक संख्या चाहिए और यह 2 -> सेकंडो होगा।
अद्यतन:
मैं में फ्रेंच, स्पेन, जर्मन और कुछ अन्य भाषाओं में काम करता है के साथ एक समाधान पाया:
maskuline क्रमसूचक संख्या: %spellout-ordinal-maskuline
संज्ञा क्रमसूचक संख्या: %spellout-ordinal-feminine
रूसी और इतालवी संस्करण काम नहीं करता है और मैंने पहले से ही कोशिश की है- मास्कुलिन/-फैमिनाइन
$ru_ordinal = new NumberFormatter('ru', NumberFormatter::SPELLOUT);
$ru_ordinal->setTextAttribute(NumberFormatter::DEFAULT_RULESET, "%spellout-ordinal");
मेरे लिए 'प्रारूप (42)' परिणाम (क्रम में) को कॉल करने के लिए: "сорок два", "cuarenta y dos" और "quaranta देय" है। क्या यह अपेक्षित आउटपुट है? सुनिश्चित करें कि आपके पास intl इंस्टॉल है। – Maerlyn
"сорок второй" नामक 42 के लिए क्रमिक संख्या, इतालवी में "cuadragésimo segundo", इतालवी में "quarantaduesimo – Grischa
हाँ मैंने इसका परीक्षण किया '$ ru_ordinal-> प्रारूप (42);' रिटर्न ** сорок два ** ** के बजाय сорок второй **। यह अजीब – user1978142