HEX
Server: Apache
System: Linux scp1.abinfocom.com 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User: confeduphaar (1010)
PHP: 8.1.33
Disabled: exec,passthru,shell_exec,system
Upload Files
File: /home/confeduphaar/backip-old-files/libraries/smartslider3/src/Framework/Misc/Str.php
<?php


namespace Nextend\Framework\Misc;


use Nextend\Framework\Misc\String\MultiByte;
use Nextend\Framework\Misc\String\SingleByte;
use Nextend\Framework\Misc\String\StringInterface;
use Nextend\Framework\Pattern\SingletonTrait;

class Str {

    use SingletonTrait;

    /**
     * @var StringInterface
     */
    private static $engine;

    protected function init() {
        if (function_exists('mb_strpos')) {
            self::$engine = new MultiByte();
        } else {
            self::$engine = new SingleByte();
        }
    }

    public static function strpos($haystack, $needle, $offset = 0) {
        return self::$engine->strpos($haystack, $needle, $offset);
    }

    public static function substr($string, $start, $length = null) {
        return self::$engine->substr($string, $start, $length);
    }

    public static function strlen($string) {
        return self::$engine->strlen($string);
    }
}

Str::getInstance();