PHPDaemon\Clients\Mongo\MongoId::import PHP Méthode

import() public static méthode

Import
public static import ( mixed $id ) : mixed
$id mixed ID
Résultat mixed
    public static function import($id)
    {
        if ($id instanceof static) {
            return $id;
        } elseif ($id instanceof \MongoId) {
            $id = (string) $id;
        } elseif (!is_string($id)) {
            if (is_array($id) && isset($id['$id'])) {
                return static::import($id['$id']);
            }
            return false;
        } elseif (mb_orig_strlen($id) === 24) {
            if (!ctype_xdigit($id)) {
                return false;
            }
        } elseif (ctype_alnum($id)) {
            $id = gmp_strval(gmp_init(strrev($id), 62), 16);
            if (mb_orig_strlen($id) > 24) {
                return false;
            }
            if (mb_orig_strlen($id) < 24) {
                $id = str_pad($id, 24, '0', STR_PAD_LEFT);
            }
        } else {
            return false;
        }
        return new static($id);
    }

Usage Example

Exemple #1
0
 /**
  * @param $cb
  * @param $type
  * @param $args
  */
 public function enqueue($cb, $type, $args, $add = [], $pushcb = null)
 {
     $ts = microtime(true);
     return $this->appInstance->jobqueue->push($type, $args, $ts, $add, function ($job) use($cb, $pushcb) {
         if ($cb !== NULL) {
             $this->callbacks[(string) MongoId::import($job->getId())] = CallbackWrapper::wrap($cb);
         }
         if ($pushcb !== null) {
             call_user_func($pushcb);
         }
     });
 }
All Usage Examples Of PHPDaemon\Clients\Mongo\MongoId::import