當前位置: 首頁>>代碼示例>>PHP>>正文


PHP AppLocale::get2LetterFrom3LetterIsoLanguage方法代碼示例

本文整理匯總了PHP中AppLocale::get2LetterFrom3LetterIsoLanguage方法的典型用法代碼示例。如果您正苦於以下問題:PHP AppLocale::get2LetterFrom3LetterIsoLanguage方法的具體用法?PHP AppLocale::get2LetterFrom3LetterIsoLanguage怎麽用?PHP AppLocale::get2LetterFrom3LetterIsoLanguage使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在AppLocale的用法示例。


在下文中一共展示了AppLocale::get2LetterFrom3LetterIsoLanguage方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: assert


//.........這裏部分代碼省略.........
                 switch ($nameType) {
                     // Authors
                     case 'personal':
                         // Only authors go into the submission.
                         if (in_array('aut', $nameRoles)) {
                             // Instantiate a new author object.
                             $authorDao = DAORegistry::getDAO('AuthorDAO');
                             /* @var $authorDao AuthorDAO */
                             $author = $authorDao->newDataObject();
                             // Family Name
                             $author->setLastName($nameDescription->getStatement('namePart[@type="family"]'));
                             // Given Names
                             $givenNames = $nameDescription->getStatement('namePart[@type="given"]');
                             if (!empty($givenNames)) {
                                 $givenNames = explode(' ', $givenNames, 2);
                                 if (isset($givenNames[0])) {
                                     $author->setFirstName($givenNames[0]);
                                 }
                                 if (isset($givenNames[1])) {
                                     $author->setMiddleName($givenNames[1]);
                                 }
                             }
                             // Affiliation
                             // NB: Our MODS mapping currently doesn't support translation for names.
                             // This can be added when required by data providers. We assume the cataloging
                             // language for the record.
                             $affiliation = $nameDescription->getStatement('affiliation');
                             if (!empty($affiliation)) {
                                 $author->setAffiliation($affiliation, $catalogingLocale);
                             }
                             // Terms of address (unmapped field)
                             $termsOfAddress = $nameDescription->getStatement('namePart[@type="termsOfAddress"]');
                             if ($termsOfAddress) {
                                 $author->setData('nlm34:namePart[@type="termsOfAddress"]', $termsOfAddress);
                             }
                             // Date (unmapped field)
                             $date = $nameDescription->getStatement('namePart[@type="date"]');
                             if ($date) {
                                 $author->setData('nlm34:namePart[@type="date"]', $date);
                             }
                             // Add the author to the submission.
                             $authorDao->insertObject($author);
                             unset($author);
                         }
                         break;
                         // Sponsor
                         // NB: Our MODS mapping currently doesn't support translation for names.
                         // This can be added when required by data providers. We assume the cataloging
                         // language for the record.
                     // Sponsor
                     // NB: Our MODS mapping currently doesn't support translation for names.
                     // This can be added when required by data providers. We assume the cataloging
                     // language for the record.
                     case 'corporate':
                         // Only the first sponsor goes into the submission.
                         if (!$foundSponsor && in_array('spn', $nameRoles)) {
                             $foundSponsor = true;
                             $targetDataObject->setSponsor($nameDescription->getStatement('namePart'), $catalogingLocale);
                         }
                         break;
                 }
             }
             unset($nameDescription);
         }
     }
     // Creation date
     $dateSubmitted = $metadataDescription->getStatement('originInfo/dateCreated[@encoding="w3cdtf"]');
     if ($dateSubmitted) {
         $targetDataObject->setDateSubmitted($dateSubmitted);
     }
     // Submission language
     $submissionLanguage = $metadataDescription->getStatement('language/languageTerm[@type="code" @authority="iso639-2b"]');
     $submissionLocale = AppLocale::get2LetterFrom3LetterIsoLanguage($submissionLanguage);
     if ($submissionLocale) {
         $targetDataObject->setLanguage($submissionLocale);
     }
     // Pages (extent)
     $pages = $metadataDescription->getStatement('physicalDescription/extent');
     if ($pages) {
         $targetDataObject->setPages($pages);
     }
     // Abstract
     $localizedAbstracts = $metadataDescription->getStatementTranslations('abstract');
     if (is_array($localizedAbstracts)) {
         foreach ($localizedAbstracts as $locale => $abstract) {
             $targetDataObject->setAbstract($abstract, $locale);
         }
     }
     // Discipline, subject class and subject
     // FIXME: We currently ignore discipline, subject class and subject because we cannot
     // distinguish them within a list of MODS topic elements. Can we use several subject
     // statements with different authorities instead?
     // FIXME: We do not include coverage information at the moment.
     // Record identifier
     // NB: We currently don't override the submission id with the record identifier in MODS
     // to make sure that MODS records can be transported between different installations.
     // Handle unmapped fields.
     $this->injectUnmappedDataObjectMetadataFields($metadataDescription, $targetDataObject);
     return $targetDataObject;
 }
開發者ID:PublishingWithoutWalls,項目名稱:pkp-lib,代碼行數:101,代碼來源:Mods34SchemaSubmissionAdapter.inc.php

示例2: testGet2LetterFrom3LetterIsoLanguage

 /**
  * @covers PKPLocale
  */
 public function testGet2LetterFrom3LetterIsoLanguage()
 {
     self::assertEquals('en', AppLocale::get2LetterFrom3LetterIsoLanguage('eng'));
     self::assertEquals('pt', AppLocale::get2LetterFrom3LetterIsoLanguage('por'));
     self::assertNull(AppLocale::get2LetterFrom3LetterIsoLanguage('xxx'));
 }
開發者ID:doana,項目名稱:pkp-lib,代碼行數:9,代碼來源:PKPLocaleTest.php


注:本文中的AppLocale::get2LetterFrom3LetterIsoLanguage方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。