} else { echo "Usage: -e <phar_file> [extract_directory]\n"; } } elseif (strtolower($argv[1]) == "-i") { //PharTools Info command if (isset($argv[2])) { //Get fixed filename if (strtolower(substr($argv[2], -5)) == ".phar" || strpos($argv[2], '.') !== false) { $file = $argv[2]; } else { $file = $argv[2] . ".phar"; } if (file_exists($file)) { try { $phar = new Phar($file, 0); if ($phar->hasMetadata()) { $metadata = metadataToString($phar->getMetadata()); } else { $metadata = "No metadata found\n"; } echo "Size: " . round(filesize($file) * 0.0009765625 * 0.0009765625, 2) . " MB (" . round(filesize($file) * 0.0009765625, 3) . " KB)\n"; echo "Signature: " . $phar->getSignature()["hash"] . "\n"; echo "Signature type: " . $phar->getSignature()["hash_type"] . "\n"; echo "Writable: " . strbool($phar->isWritable()) . "\n"; echo "Readable: " . strbool($phar->isReadable()) . "\n"; echo "Metadata: " . $metadata; echo "Show stub (y, n)? "; $input = fopen("php://stdin", "r"); $line = fgets($input); if (trim($line) == 'y') { echo $phar->getStub();