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


PHP PhpWriter::quoteFilter方法代碼示例

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


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

示例1: macroVar

 /**
  * {var ...}
  * {default ...}
  */
 public function macroVar(MacroNode $node, PhpWriter $writer)
 {
     if ($node->modifiers) {
         trigger_error("Modifiers are not allowed in {{$node->name}}", E_USER_WARNING);
     }
     if ($node->args === '' && $node->parentNode && $node->parentNode->name === 'switch') {
         return '} else {';
     }
     $var = TRUE;
     $tokens = $writer->preprocess();
     $res = new Latte\MacroTokens();
     while ($tokens->nextToken()) {
         if ($var && $tokens->isCurrent(Latte\MacroTokens::T_SYMBOL, Latte\MacroTokens::T_VARIABLE)) {
             if ($node->name === 'default') {
                 $res->append("'" . ltrim($tokens->currentValue(), '$') . "'");
             } else {
                 $res->append('$' . ltrim($tokens->currentValue(), '$'));
             }
             $var = NULL;
         } elseif ($tokens->isCurrent('=', '=>') && $tokens->depth === 0) {
             $res->append($node->name === 'default' ? '=>' : '=');
             $var = FALSE;
         } elseif ($tokens->isCurrent(',') && $tokens->depth === 0) {
             if ($var === NULL) {
                 $res->append($node->name === 'default' ? '=>NULL' : '=NULL');
             }
             $res->append($node->name === 'default' ? ',' : ';');
             $var = TRUE;
         } elseif ($var === NULL && $node->name === 'default' && !$tokens->isCurrent(Latte\MacroTokens::T_WHITESPACE)) {
             throw new CompileException("Unexpected '{$tokens->currentValue()}' in {default {$node->args}}");
         } else {
             $res->append($tokens->currentToken());
         }
     }
     if ($var === NULL) {
         $res->append($node->name === 'default' ? '=>NULL' : '=NULL');
     }
     $out = $writer->quoteFilter($res)->joinAll();
     return $node->name === 'default' ? "extract(array({$out}), EXTR_SKIP)" : $out;
 }
開發者ID:luminousinfoways,項目名稱:pccfoas,代碼行數:44,代碼來源:CoreMacros.php


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