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


PHP Parser::getPathParameterAssoc方法代碼示例

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


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

示例1: createSecurityYaml

 public function createSecurityYaml($basePath, $security, $paths)
 {
     $b = '';
     if (null != $security) {
         $firewallName = 'api_base_path';
         $securityDefinitionsKeys = array();
         foreach ($security as $securityItem) {
             $securityKeys = array_keys($securityItem);
             $securityDefinitionsKeys[] = $securityKeys[0];
         }
         $b .= "    " . 'api_base_path' . ":\n";
         $b .= "      " . 'stateless: true' . "\n";
         $b .= "      " . 'pattern: ' . '^' . $basePath . "\n";
         foreach ($securityDefinitionsKeys as $securityDefinitionKey) {
             $b .= "      " . 'simple_preauth: ' . "\n";
             $b .= "        " . 'provider: ' . 'api_' . $securityDefinitionKey . "\n";
             $b .= "        " . 'authenticator: ' . self::buildAuthenticatorId($securityDefinitionKey) . "\n";
         }
     }
     foreach ($paths as $pathName => $path) {
         foreach ($path as $verb => $objects) {
             $parameters = $this->apiRoutingCreator->getRouteParametersAsArray($verb, $objects, $pathName);
             $firewallName = 'api_' . $parameters['name'];
             if (isset($objects['security'])) {
                 $securityDefinitionsKeys = array();
                 foreach ($objects['security'] as $securityItem) {
                     $securityKeys = array_keys($securityItem);
                     $securityDefinitionsKeys[] = $securityKeys[0];
                 }
                 $a = $this->apiRoutingCreator->getPathParameterAssoc($this->apiRoutingCreator->extractPathParameters($objects));
                 foreach ($a as $name => $regex) {
                     $pathName = str_replace('{' . $name . '}', $regex, $pathName);
                 }
                 $b .= "    " . $firewallName . ":\n";
                 $b .= "      " . 'stateless: true' . "\n";
                 $b .= "      " . 'pattern: ' . '^' . $basePath . $pathName . "\n";
                 $b .= "      " . 'methods: [' . strtoupper($verb) . ']' . "\n";
                 foreach ($securityDefinitionsKeys as $securityDefinitionKey) {
                     $b .= "      " . 'simple_preauth: ' . "\n";
                     $b .= "        " . 'provider: ' . 'api_' . $securityDefinitionKey . "\n";
                     $b .= "        " . 'authenticator: ' . self::buildAuthenticatorId($securityDefinitionKey) . "\n";
                 }
             } else {
                 $b .= "    " . $firewallName . ":\n";
                 $b .= "     " . 'pattern: ' . '^' . $basePath . $pathName . "\n";
                 $b .= "     " . 'methods: [' . strtoupper($verb) . ']' . "\n";
                 $b .= "     " . 'security: false' . "\n";
             }
         }
     }
     $firewall = "api";
     $a = 'security: ' . "\n" . "  " . 'firewalls:' . "\n" . "### --- COPY THIS CONTENT IN security.yml file  --- ###" . "\n\n\n" . $b;
     return $a;
 }
開發者ID:enneite,項目名稱:swagger-bundle,代碼行數:54,代碼來源:ApiSecurityCreator.php


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