PluginProbe ʕ •ᴥ•ʔ
WP STAGING – WordPress Backup, Restore, Migration & Clone / 3.8.2
WP STAGING – WordPress Backup, Restore, Migration & Clone v3.8.2
4.9.2 4.9.1 4.9.0 4.8.1 trunk 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.10.0 3.2.0 3.3.1 3.3.2 3.3.3 3.4.1 3.4.3 3.5.0 3.6.0 3.7.1 3.8.0 3.8.1 3.8.2 3.8.3 3.8.4 3.8.5 3.8.6 3.8.7 3.9.0 3.9.1 3.9.2 3.9.3 3.9.4 4.0.0 4.1.0 4.1.1 4.1.2 4.1.3 4.1.4 4.2.0 4.2.1 4.3.0 4.3.1 4.3.2 4.4.0 4.5.0 4.6.0 4.7.0 4.7.1 4.7.2 4.7.3 4.8.0
wp-staging / Framework / Traits / EndOfLinePlaceholderTrait.php
wp-staging / Framework / Traits Last commit date
ArrayableTrait.php 2 years ago BenchmarkTrait.php 2 years ago BooleanTransientTrait.php 5 years ago DatabaseSearchReplaceTrait.php 2 years ago DbRowsGeneratorTrait.php 4 years ago DeveloperTimerTrait.php 4 years ago EndOfLinePlaceholderTrait.php 2 years ago EventLoggerTrait.php 1 year ago FileScanToCacheTrait.php 2 years ago HydrateTrait.php 2 years ago MaintenanceTrait.php 5 years ago MemoryExhaustTrait.php 2 years ago MySQLRowsGeneratorTrait.php 2 years ago NoticesTrait.php 2 years ago PropertyConstructor.php 5 years ago ResourceTrait.php 2 years ago ValueGetterTrait.php 1 year ago
EndOfLinePlaceholderTrait.php
48 lines
1 <?php
2
3 namespace WPStaging\Framework\Traits;
4
5 /**
6 * Trait EndOfLinePlaceholderTrait
7 * @package WPStaging\Framework\Traits
8 */
9 trait EndOfLinePlaceholderTrait
10 {
11 /**
12 * @param array|string $subject
13 *
14 * @see https://github.com/wp-staging/wp-staging-pro/issues/3402
15 *
16 * @return array|string
17 */
18 public function replaceEOLsWithPlaceholders($subject)
19 {
20 //Early bail: newline (\n) in file name will not happen on windows.
21 if (strncasecmp(PHP_OS, 'WIN', 3) === 0) {
22 return $subject;
23 }
24
25 return empty($subject) ? $subject : str_replace([PHP_EOL], ['{WPSTG_EOL}'], $subject);
26 }
27
28 /**
29 * @param array|string $subject
30 *
31 * @see https://github.com/wp-staging/wp-staging-pro/issues/3402
32 *
33 * @return array|string
34 */
35 public function replacePlaceholdersWithEOLs($subject)
36 {
37 if (strncasecmp(PHP_OS, 'WIN', 3) === 0) {
38 if (!empty($this->logger) && strpos($subject, '{WPSTG_EOL}') !== false) {
39 $this->logger->warning(sprintf('Filename %s contains EOL character, plugin using that file might not work.', $subject));
40 }
41
42 return $subject;
43 }
44
45 return empty($subject) ? $subject : str_replace(['{WPSTG_EOL}'], [PHP_EOL], $subject);
46 }
47 }
48