From 2cb98c48c26d9669a5f95979015181b9d0ea645e Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 10 Mar 2017 21:51:05 +0000 Subject: [PATCH] Improved dependency checking --- src/pocketmine/PocketMine.php | 37 ++++++++++++++--------------------- 1 file changed, 15 insertions(+), 22 deletions(-) diff --git a/src/pocketmine/PocketMine.php b/src/pocketmine/PocketMine.php index 3e69e6d9d..9a0269657 100644 --- a/src/pocketmine/PocketMine.php +++ b/src/pocketmine/PocketMine.php @@ -398,11 +398,6 @@ namespace pocketmine { ++$errors; } - if(!extension_loaded("sockets")){ - $logger->critical("Unable to find the Socket extension."); - ++$errors; - } - $pthreads_version = phpversion("pthreads"); if(substr_count($pthreads_version, ".") < 2){ $pthreads_version = "0.$pthreads_version"; @@ -431,24 +426,22 @@ namespace pocketmine { "); } - if(!extension_loaded("curl")){ - $logger->critical("Unable to find the cURL extension."); - ++$errors; - } + $extensions = [ + "curl" => "cURL", + "json" => "JSON", + "mbstring" => "Multibyte String", + "yaml" => "YAML", + "openssl" => "OpenSSL", + "sockets" => "Sockets", + "zip" => "Zip", + "zlib" => "Zlib" + ]; - if(!extension_loaded("yaml")){ - $logger->critical("Unable to find the YAML extension."); - ++$errors; - } - - if(!extension_loaded("zlib")){ - $logger->critical("Unable to find the Zlib extension."); - ++$errors; - } - - if(!extension_loaded("openssl")){ - $logger->critical("Unable to find the OpenSSL extension."); - ++$errors; + foreach($extensions as $ext => $name){ + if(!extension_loaded($ext)){ + $logger->critical("Unable to find the $name ($ext) extension."); + ++$errors; + } } if($errors > 0){