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


PHP Code::dashToCamelCase方法代碼示例

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


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

示例1: routeController

 /**
  * Findet den Controller anhand des Requests
  * 
  * GET [/$prefix]/person/1
  *  =>
  * \Project::getNamespace()\Controllers\PersonController::getEntity(1)
  * =>
  * \CoC\Controllers\PersonController::getEntity(1)
  *
  * GET [/$prefix]/person/1/form
  * =>
  * \Project::getNamespace()\Controllers\PersonController::getEntity(1,'form')
  *
  * GET [/$prefix]/persons/grid?filter1=value1&filter2=value2
  * =>
  * \Project::getNamespace()\Controllers\PersonController::getEntities(array('filter1'=>'value1', 'filter2'=>'value2'),'grid')
  */
 public function routeController(ServiceRequest $request)
 {
     $r = $this->initRequestMatcher($request);
     $entityPart = $r->qmatchRx('/^[a-z-0-9]+$/i', 0);
     if (mb_strpos($entityPart, '-') !== FALSE) {
         $entityPart = Code::dashToCamelCase($entityPart);
     }
     // alle weiteren Parameter an den Controller weitergeben
     $params = $r->getLeftParts();
     if ($request->getType() === self::GET) {
         $this->log('EntityPart: ' . $entityPart . ' ' . ($this->isPlural($entityPart) ? 'ist plural' : 'ist singular'), 2);
         if ($this->isPlural($entityPart)) {
             if ($r->part() === 'form') {
                 $method = 'getNewEntityFormular';
             } else {
                 $method = 'getEntities';
                 A::insert($params, $request->getQuery(), 0);
                 // query als 1. parameter
             }
             $entityPart = Inflector::singular($entityPart);
         } else {
             $method = 'getEntity';
             $params = array();
             $params[] = $r->shift();
             // id
             $params[] = count($r->getLeftParts()) > 1 ? $r->getLeftParts() : $r->shift();
             // subresource
             $params[] = $request->getQuery();
         }
     } elseif ($request->getType() === self::PUT) {
         if ($r->part() === 'grid') {
             $entityPart = Inflector::singular($entityPart);
             $controller = $this->getEntityController($entityPart);
             $method = 'saveSort';
             $params = array($r->bvar($controller->getSortField(), array()));
         } elseif ($request->hasMeta('revision') && $request->getMeta('revision') !== 'default') {
             $method = 'saveEntityAsRevision';
             A::insert($params, $request->getMeta('revision'), 1);
             A::insert($params, (object) $request->getBody(), 2);
         } else {
             $method = 'saveEntity';
             A::insert($params, (object) $request->getBody(), 1);
             // $formData als parameter 2
         }
     } elseif ($request->getType() === self::PATCH) {
         $method = 'patchEntity';
         A::insert($params, (object) $request->getBody(), 1);
         // $formData als parameter 2
     } elseif ($request->getType() === self::DELETE) {
         $method = 'deleteEntity';
         // das gibt einen "missing argument 1" fehler, wenn id fehlt, aber ka welche httpException ich hier nehmensoll, deshalb bleibt das erstmal so
     } elseif ($request->getType() === self::POST) {
         $entityPart = Inflector::singular($entityPart);
         // singular und plural okay
         A::insert($params, $request->getBody(), 0);
         // $formData als parameter 1
         if ($request->hasMeta('revision')) {
             $method = 'insertEntityRevision';
             A::insert($params, $request->getMeta('revision'), 0);
         } else {
             $method = 'insertEntity';
         }
     } else {
         // das kann glaub ich nicht mehr passieren, weil wir jetzt alle haben: put/pust/delete/get gibts nicht noch head?
         throw HTTPException::MethodNotAllowed('Die Methode: ' . $request->getType() . ' ist für diesen Request nicht erlaubt');
     }
     if (!isset($controller)) {
         $controller = $this->getEntityController($entityPart);
     }
     return array($controller, $method, $params);
 }
開發者ID:pscheit,項目名稱:psc-cms,代碼行數:88,代碼來源:EntityService.php


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