REDROOM
PHP 8.3.31
Path:
Logout
Edit File
Size: 2.94 KB
Close
/home/getspomw/royalsquad.us/vendor/symfony/console/Helper/OutputWrapper.php
Text
Base64
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Console\Helper; /** * Simple output wrapper for "tagged outputs" instead of wordwrap(). This solution is based on a StackOverflow * answer: https://stackoverflow.com/a/20434776/1476819 from user557597 (alias SLN). * * (?: * # -- Words/Characters * ( # (1 start) * (?> # Atomic Group - Match words with valid breaks * .{1,16} # 1-N characters * # Followed by one of 4 prioritized, non-linebreak whitespace * (?: # break types: * (?<= [^\S\r\n] ) # 1. - Behind a non-linebreak whitespace * [^\S\r\n]? # ( optionally accept an extra non-linebreak whitespace ) * | (?= \r? \n ) # 2. - Ahead a linebreak * | $ # 3. - EOS * | [^\S\r\n] # 4. - Accept an extra non-linebreak whitespace * ) * ) # End atomic group * | * .{1,16} # No valid word breaks, just break on the N'th character * ) # (1 end) * (?: \r? \n )? # Optional linebreak after Words/Characters * | * # -- Or, Linebreak * (?: \r? \n | $ ) # Stand alone linebreak or at EOS * ) * * @author Krisztián Ferenczi <ferenczi.krisztian@gmail.com> * * @see https://stackoverflow.com/a/20434776/1476819 */ final class OutputWrapper { private const TAG_OPEN_REGEX_SEGMENT = '[a-z](?:[^\\\\<>]*+ | \\\\.)*'; private const TAG_CLOSE_REGEX_SEGMENT = '[a-z][^<>]*+'; private const URL_PATTERN = 'https?://\S+'; public function __construct( private bool $allowCutUrls = false, ) { } public function wrap(string $text, int $width, string $break = "\n"): string { if (!$width) { return $text; } $tagPattern = \sprintf('<(?:(?:%s)|/(?:%s)?)>', self::TAG_OPEN_REGEX_SEGMENT, self::TAG_CLOSE_REGEX_SEGMENT); $limitPattern = "{1,$width}"; $patternBlocks = [$tagPattern]; if (!$this->allowCutUrls) { $patternBlocks[] = self::URL_PATTERN; } $patternBlocks[] = '.'; $blocks = implode('|', $patternBlocks); $rowPattern = "(?:$blocks)$limitPattern"; $pattern = \sprintf('#(?:((?>(%1$s)((?<=[^\S\r\n])[^\S\r\n]?|(?=\r?\n)|$|[^\S\r\n]))|(%1$s))(?:\r?\n)?|(?:\r?\n|$))#imux', $rowPattern); $output = rtrim(preg_replace($pattern, '\\1'.$break, $text), $break); return str_replace(' '.$break, $break, $output); } }
Save
Close
Exit & Reset
Text mode: syntax highlighting auto-detects file type.
Directory Contents
Dirs: 0 × Files: 20
Delete Selected
Select All
Select None
Sort:
Name
Size
Modified
Enable drag-to-move
Name
Size
Perms
Modified
Actions
DebugFormatterHelper.php
3.25 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
DescriptorHelper.php
2.56 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Dumper.php
1.63 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
FormatterHelper.php
2.19 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Helper.php
4.35 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
HelperInterface.php
799 B
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
HelperSet.php
1.79 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
InputAwareHelper.php
731 B
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
OutputWrapper.php
2.94 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ProcessHelper.php
4.72 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ProgressBar.php
19.95 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
ProgressIndicator.php
7.48 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
QuestionHelper.php
18.82 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
SymfonyQuestionHelper.php
3.15 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Table.php
31.39 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
TableCell.php
1.69 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
TableCellStyle.php
2.17 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
TableRows.php
536 B
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
TableSeparator.php
531 B
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
TableStyle.php
12.46 KB
lrw-rw-rw-
2025-09-17 06:53:23
Edit
Download
Rename
Chmod
Change Date
Delete
OK
Cancel
recursive
OK
Cancel
recursive
OK
Cancel
Zip Selected
If ZipArchive is unavailable, a
.tar
will be created (no compression).