1
0
mirror of https://github.com/danog/process.git synced 2024-11-30 04:39:04 +01:00
process/lib/functions.php
Aaron Piotrowski 155960d7dd
Rename escape function
Renamed constants.php to functions.php since it now contains a function.
2019-02-25 22:50:25 -06:00

35 lines
871 B
PHP

<?php
namespace Amp\Process;
const BIN_DIR = __DIR__ . DIRECTORY_SEPARATOR . '..' . DIRECTORY_SEPARATOR . 'bin';
const IS_WINDOWS = (PHP_OS & "\xDF\xDF\xDF") === 'WIN';
if (IS_WINDOWS) {
/**
* Escapes the command argument for safe inclusion into a Windows command string.
*
* @param string $arg
*
* @return string
*/
function escapeArguments(string $arg): string
{
return '"' . \preg_replace_callback('(\\\\*("|$))', function (array $m): string {
return \str_repeat('\\', \strlen($m[0])) . $m[0];
}, $arg) . '"';
}
} else {
/**
* Escapes the command argument for safe inclusion into a Posix shell command string.
*
* @param string $arg
*
* @return string
*/
function escapeArguments(string $arg): string
{
return \escapeshellarg($arg);
}
}