PluginProbe ʕ •ᴥ•ʔ
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress / 4.17.1
Paid Membership Plugin, Ecommerce, User Registration Form, Login Form, User Profile & Restrict Content – ProfilePress v4.17.1
4.17.1 4.17.0 4.16.19 4.16.18 4.16.17 4.16.16 trunk 1.0 1.0.1 1.0.2 1.1 1.1.1 1.1.2 1.1.3 1.1.4 1.1.5 1.1.5a 1.1.6 1.1.7 1.2 1.2.1 1.2.2 1.2.3 1.2.4 1.2.5 1.2.6 1.3 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.6 1.4 1.4.1 1.4.2 1.5 1.5.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6 1.6.1 1.6.2 1.6.3 1.6.4 1.6.5 1.6.6 1.6.7 1.6.8 1.7 1.7.1 1.7.2 1.8 1.8.1 1.8.10 1.8.2 1.8.3 1.8.4 1.8.5 1.8.6 1.8.7 1.8.8 1.8.9 1.9 1.9.1 1.9.10 1.9.11 1.9.12 1.9.13 1.9.2 1.9.3 1.9.4 1.9.5 1.9.6 1.9.7 1.9.8 1.9.9 2.1.9 2.2.10 2.2.11 2.2.12 2.2.13 2.2.14 2.2.15 2.2.16 2.2.2 2.2.5 2.2.6 2.2.7 2.2.8 2.2.9 3.0 3.1 3.1.1 3.1.10 3.1.11 3.1.12 3.1.13 3.1.14 3.1.15 3.1.16 3.1.17 3.1.18 3.1.19 3.1.2 3.1.3 3.1.4 3.1.5 3.1.6 3.1.7 3.1.8 3.1.9 3.2.0 3.2.1 3.2.10 3.2.11 3.2.12 3.2.13 3.2.14 3.2.15 3.2.16 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 4.0.0 4.0.1 4.0.2 4.0.3 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.10.0 4.10.1 4.10.2 4.10.3 4.11.0 4.12.0 4.13.0 4.13.1 4.13.2 4.13.3 4.13.4 4.14.0 4.14.1 4.14.2 4.14.3 4.14.4 4.15.0 4.15.1 4.15.10 4.15.11 4.15.12 4.15.13 4.15.14 4.15.15 4.15.16 4.15.17 4.15.18 4.15.19 4.15.2 4.15.20 4.15.20.1 4.15.21 4.15.22 4.15.23 4.15.24 4.15.25 4.15.3 4.15.4 4.15.5 4.15.6 4.15.7 4.15.8 4.15.9 4.16.0 4.16.1 4.16.10 4.16.11 4.16.12 4.16.13 4.16.14 4.16.15 4.16.2 4.16.3 4.16.4 4.16.5 4.16.6 4.16.7 4.16.8 4.16.9 4.2.0 4.3.0 4.3.1 4.3.2 4.4.0 4.4.1 4.5.0 4.5.1 4.5.2 4.5.3 4.5.4 4.5.5 4.6.0 4.7.0 4.8.0 4.9.0
wp-user-avatar / third-party / vendor / league / csv / src / EncloseField.php
wp-user-avatar / third-party / vendor / league / csv / src Last commit date
AbstractCsv.php 2 months ago ByteSequence.php 2 months ago CannotInsertRecord.php 2 months ago CharsetConverter.php 2 months ago ColumnConsistency.php 2 months ago EncloseField.php 2 months ago EscapeFormula.php 2 months ago Exception.php 2 months ago HTMLConverter.php 2 months ago Info.php 2 months ago InvalidArgument.php 2 months ago MapIterator.php 2 months ago RFC4180Field.php 2 months ago Reader.php 2 months ago ResultSet.php 2 months ago Statement.php 2 months ago Stream.php 2 months ago SyntaxError.php 2 months ago TabularDataReader.php 2 months ago UnableToProcessCsv.php 2 months ago UnavailableFeature.php 2 months ago UnavailableStream.php 2 months ago Writer.php 2 months ago XMLConverter.php 2 months ago functions.php 2 months ago functions_include.php 2 months ago
EncloseField.php
97 lines
1 <?php
2
3 /**
4 * League.Csv (https://csv.thephpleague.com)
5 *
6 * (c) Ignace Nyamagana Butera <nyamsprod@gmail.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11 declare (strict_types=1);
12 namespace ProfilePressVendor\League\Csv;
13
14 use InvalidArgumentException;
15 use php_user_filter;
16 use function array_map;
17 use function in_array;
18 use function str_replace;
19 use function strcspn;
20 use function stream_bucket_append;
21 use function stream_bucket_make_writeable;
22 use function stream_filter_register;
23 use function stream_get_filters;
24 use function strlen;
25 /**
26 * A stream filter to improve enclosure character usage.
27 *
28 * @see https://tools.ietf.org/html/rfc4180#section-2
29 * @see https://bugs.php.net/bug.php?id=38301
30 */
31 class EncloseField extends php_user_filter
32 {
33 const FILTERNAME = 'convert.league.csv.enclosure';
34 /** Default sequence. */
35 protected string $sequence;
36 /** Characters that triggers enclosure in PHP. */
37 protected static string $force_enclosure = "\n\r\t ";
38 /**
39 * Static method to return the stream filter filtername.
40 */
41 public static function getFiltername(): string
42 {
43 return self::FILTERNAME;
44 }
45 /**
46 * Static method to register the class as a stream filter.
47 */
48 public static function register(): void
49 {
50 if (!in_array(self::FILTERNAME, stream_get_filters(), \true)) {
51 stream_filter_register(self::FILTERNAME, self::class);
52 }
53 }
54 /**
55 * Static method to add the stream filter to a {@link Writer} object.
56 *
57 * @throws InvalidArgumentException if the sequence is malformed
58 * @throws Exception
59 */
60 public static function addTo(Writer $csv, string $sequence): Writer
61 {
62 self::register();
63 if (!self::isValidSequence($sequence)) {
64 throw new InvalidArgumentException('The sequence must contain at least one character to force enclosure');
65 }
66 return $csv->addFormatter(fn(array $record): array => array_map(fn(?string $value): string => $sequence . $value, $record))->addStreamFilter(self::FILTERNAME, ['sequence' => $sequence]);
67 }
68 /**
69 * Filter type and sequence parameters.
70 *
71 * The sequence to force enclosure MUST contains one of the following character ("\n\r\t ")
72 */
73 protected static function isValidSequence(string $sequence): bool
74 {
75 return strlen($sequence) != strcspn($sequence, self::$force_enclosure);
76 }
77 public function onCreate(): bool
78 {
79 return isset($this->params['sequence']) && self::isValidSequence($this->params['sequence']);
80 }
81 /**
82 * @param resource $in
83 * @param resource $out
84 * @param int $consumed
85 * @param bool $closing
86 */
87 public function filter($in, $out, &$consumed, $closing): int
88 {
89 while (null !== $bucket = stream_bucket_make_writeable($in)) {
90 $bucket->data = str_replace($this->params['sequence'], '', $bucket->data);
91 $consumed += $bucket->datalen;
92 stream_bucket_append($out, $bucket);
93 }
94 return \PSFS_PASS_ON;
95 }
96 }
97