PluginProbe ʕ •ᴥ•ʔ
Matomo Analytics – Powerful, Privacy-First Insights for WordPress / trunk
Matomo Analytics – Powerful, Privacy-First Insights for WordPress vtrunk
5.11.1 5.11.0 5.10.2 5.10.1 trunk 1.0.2 1.0.3 1.0.4 1.0.5 1.0.6 1.1.0 1.1.1 1.1.2 1.1.3 1.2.0 1.3.0 1.3.1 1.3.2 4.0.0 4.0.1 4.0.2 4.0.3 4.0.4 4.1.0 4.1.1 4.1.2 4.1.3 4.10.0 4.11.0 4.12.0 4.13.0 4.13.2 4.13.3 4.13.4 4.13.5 4.14.0 4.14.1 4.14.2 4.15.0 4.15.1 4.15.2 4.15.3 4.2.0 4.3.0 4.3.1 4.4.1 4.4.2 4.5.0 4.6.0 5.0.1 5.0.2 5.0.3 5.0.4 5.0.5 5.0.6 5.0.7 5.0.8 5.1.0 5.1.1 5.1.2 5.1.3 5.1.4 5.1.5 5.1.6 5.1.7 5.10.0 5.2.0 5.2.1 5.2.2 5.3.0 5.3.1 5.3.2 5.3.3 5.6.0 5.6.1 5.7.0 5.7.1 5.8.0 5.8.1 5.8.2
matomo / app / core / CliMulti / Output.php
matomo / app / core / CliMulti Last commit date
CliPhp.php 1 year ago Output.php 2 years ago OutputInterface.php 2 years ago Process.php 1 year ago ProcessSymfony.php 1 year ago RequestCommand.php 1 year ago StaticOutput.php 1 year ago
Output.php
62 lines
1 <?php
2
3 /**
4 * Matomo - free/libre analytics platform
5 *
6 * @link https://matomo.org
7 * @license https://www.gnu.org/licenses/gpl-3.0.html GPL v3 or later
8 */
9 namespace Piwik\CliMulti;
10
11 use Piwik\CliMulti;
12 use Piwik\Filesystem;
13 class Output implements \Piwik\CliMulti\OutputInterface
14 {
15 private $tmpFile = '';
16 private $outputId = null;
17 public function __construct($outputId)
18 {
19 if (!Filesystem::isValidFilename($outputId)) {
20 throw new \Exception('The given output id has an invalid format');
21 }
22 $dir = CliMulti::getTmpPath();
23 Filesystem::mkdir($dir);
24 $this->tmpFile = $dir . '/' . $outputId . '.output';
25 $this->outputId = $outputId;
26 }
27 public function getOutputId()
28 {
29 return $this->outputId;
30 }
31 public function write($content)
32 {
33 file_put_contents($this->tmpFile, $content);
34 }
35 public function getPathToFile()
36 {
37 return $this->tmpFile;
38 }
39 public function isAbnormal() : bool
40 {
41 $size = Filesystem::getFileSize($this->tmpFile, 'MB');
42 return $size !== null && $size >= 100;
43 }
44 public function exists() : bool
45 {
46 return file_exists($this->tmpFile);
47 }
48 public function get()
49 {
50 $content = @file_get_contents($this->tmpFile);
51 $search = '#!/usr/bin/env php';
52 if (!empty($content) && is_string($content) && mb_substr(trim($content), 0, strlen($search)) === $search) {
53 $content = trim(mb_substr(trim($content), strlen($search)));
54 }
55 return $content;
56 }
57 public function destroy()
58 {
59 Filesystem::deleteFileIfExists($this->tmpFile);
60 }
61 }
62