Files
drupal11-ddev/web/core/tests/Drupal/Tests/StreamCapturer.php
2025-10-08 11:39:17 -04:00

31 lines
587 B
PHP

<?php
declare(strict_types=1);
namespace Drupal\Tests;
// cspell:ignore datalen PSFS_FEED_ME writeable
/**
* Captures output to a stream and stores it for retrieval.
*/
class StreamCapturer extends \php_user_filter {
/**
* The cache data.
*
* @var string
*/
public static $cache = '';
public function filter($in, $out, &$consumed, $closing): int {
while ($bucket = stream_bucket_make_writeable($in)) {
self::$cache .= $bucket->data;
$consumed += $bucket->datalen;
stream_bucket_append($out, $bucket);
}
return PSFS_FEED_ME;
}
}