pocketmine\Server::getConfigString PHP Method

getConfigString() public method

public getConfigString ( string $variable, string $defaultValue = "" ) : string
$variable string
$defaultValue string
return string
    public function getConfigString($variable, $defaultValue = "")
    {
        $v = getopt("", ["{$variable}::"]);
        if (isset($v[$variable])) {
            return (string) $v[$variable];
        }
        return $this->properties->exists($variable) ? $this->properties->get($variable) : $defaultValue;
    }

Usage Example

Example #1
0
 private function init()
 {
     $this->memoryLimit = (int) $this->server->getProperty("memory.main-limit", 0) * 1024 * 1024;
     $defaultMemory = 1024;
     if (preg_match("/([0-9]+)([KMGkmg])/", $this->server->getConfigString("memory-limit", ""), $matches) > 0) {
         $m = (int) $matches[1];
         if ($m <= 0) {
             $defaultMemory = 0;
         } else {
             switch (strtoupper($matches[2])) {
                 case "K":
                     $defaultMemory = $m / 1024;
                     break;
                 case "M":
                     $defaultMemory = $m;
                     break;
                 case "G":
                     $defaultMemory = $m * 1024;
                     break;
                 default:
                     $defaultMemory = $m;
                     break;
             }
         }
     }
     $hardLimit = (int) $this->server->getProperty("memory.main-hard-limit", $defaultMemory);
     if ($hardLimit <= 0) {
         ini_set("memory_limit", -1);
     } else {
         ini_set("memory_limit", $hardLimit . "M");
     }
     $this->globalMemoryLimit = (int) $this->server->getProperty("memory.global-limit", 0) * 1024 * 1024;
     $this->checkRate = (int) $this->server->getProperty("memory.check-rate", 20);
     $this->continuousTrigger = (bool) $this->server->getProperty("memory.continuous-trigger", true);
     $this->continuousTriggerRate = (int) $this->server->getProperty("memory.continuous-trigger-rate", 30);
     $this->garbageCollectionPeriod = (int) $this->server->getProperty("memory.garbage-collection.period", 36000);
     $this->garbageCollectionTrigger = (bool) $this->server->getProperty("memory.garbage-collection.low-memory-trigger", true);
     $this->garbageCollectionAsync = (bool) $this->server->getProperty("memory.garbage-collection.collect-async-worker", true);
     $this->chunkLimit = (int) $this->server->getProperty("memory.max-chunks.trigger-limit", 96);
     $this->chunkCollect = (bool) $this->server->getProperty("memory.max-chunks.trigger-chunk-collect", true);
     $this->chunkTrigger = (bool) $this->server->getProperty("memory.max-chunks.low-memory-trigger", true);
     $this->chunkCache = (bool) $this->server->getProperty("memory.world-caches.disable-chunk-cache", true);
     $this->cacheTrigger = (bool) $this->server->getProperty("memory.world-caches.low-memory-trigger", true);
     gc_enable();
 }
Server