本文整理汇总了PHP中PhpParser\PrettyPrinter\Standard::pCommaSeparated方法的典型用法代码示例。如果您正苦于以下问题:PHP Standard::pCommaSeparated方法的具体用法?PHP Standard::pCommaSeparated怎么用?PHP Standard::pCommaSeparated使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PhpParser\PrettyPrinter\Standard
的用法示例。
在下文中一共展示了Standard::pCommaSeparated方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: pParameterNodes
/**
* Pretty prints an array of nodes and implodes the printed values with commas.
*
* @param \PhpParser\Node[] $nodes Array of Nodes to be printed
*
* @return string Comma separated pretty printed nodes
*/
protected function pParameterNodes(array $nodes)
{
$startLine = '';
$multiLine = FALSE;
if (isset($nodes[0]) && $nodes[0]->hasAttribute('startLine')) {
$startLine = reset($nodes)->getAttribute('startLine');
$endLine = end($nodes)->getAttribute('endLine');
if ($startLine != $endLine) {
$multiLine = TRUE;
}
}
if (!$multiLine) {
return parent::pCommaSeparated($nodes);
}
$printedNodes = '';
foreach ($nodes as $node) {
$glueToken = ", ";
if ($node->getAttribute('startLine') != $startLine) {
$glueToken = ',' . LF;
$startLine = $node->getAttribute('startLine');
}
if (!empty($printedNodes)) {
$printedNodes .= $glueToken . $this->p($node);
} else {
$printedNodes .= $this->p($node);
}
}
return preg_replace('~\\n(?!$|' . $this->noIndentToken . ')~', LF . $this->indentToken, $printedNodes);
}
示例2: pCommaSeparatedLines
protected function pCommaSeparatedLines(array $nodes, $prefix = '', $suffix = '', $trailingComma = false)
{
$arr = parent::pCommaSeparated($nodes);
if ($this->needsWrapping($arr)) {
$arr = "\n" . $this->pImplode($nodes, ",\n") . ($trailingComma ? ',' : '') . "\n";
}
return $prefix . preg_replace('~\\n(?!$|\\n|' . $this->noIndentToken . ')~', "\n" . $this->indentation, $arr) . $suffix;
}