@param array $storage

@return string
544877
protected function buildJoin($storage)
    {
        $results = [];

        foreach ($storage as $join)
        {
            /**
             * @var Classes\Join $join
             */
            $results[] = (string)$join;
            $this->push($join->attributes());
        }

        return implode(' ', $results);
    }
1129332
public static function get( array $storage, $key, $default = null )
	{
		if ($key === null) {
			return $storage;
		}

		if (is_array($key)) {
			return static::getArray($storage, $key, $default);
		}

		foreach (explode('.', $key) as $segment) {
			if (!is_array($storage)) {
				return $default;
			}

			if (!array_key_exists($segment, $storage)) {
				return $default;
			}

			$storage = $storage[$segment];
		}

		return $storage;
	}
1121851
protected function getItemOnePiece(Storage $storage)
    {
        return (new Item())
            ->setCountry($this->getCountry('JP'))
            ->setCover('example/one-piece.jpg')
            ->setDatePremiere(new \DateTime('1999-10-20'))
            ->setDuration(25)
            ->setEpisodesNumber('602+')
            ->setFileInfo('+ 6 спэшлов')
            ->setName('One Piece')
            ->setPath($storage->getPath().'One Piece (2011) [TV]'.DIRECTORY_SEPARATOR)
            ->setStorage($storage)
            ->setSummary(
                'Последние слова, произнесенные Королем Пиратов перед казнью, вдохновили многих: «Мои сокровища? Коли '
                .'хотите, забирайте. Ищите – я их все оставил там!». Легендарная фраза Золотого Роджера ознаменовала '
                .'начало Великой Эры Пиратов – тысячи людей в погоне за своими мечтами отправились на Гранд Лайн, '
                .'самое опасное место в мире, желая стать обладателями мифических сокровищ... Но с каждым годом '
                .'романтиков становилось все меньше, их постепенно вытесняли прагматичные пираты-разбойники, которым '
                .'награбленное добро было куда ближе, чем какие-то «никчемные мечты». Но вот, одним прекрасным днем, '
                .'семнадцатилетний Монки Д. Луффи исполнил заветную мечту детства - отправился в море. Его цель - ни '
                .'много, ни мало стать новым Королем Пиратов. За достаточно короткий срок юному капитану удается '
                .'собрать команду, состоящую из не менее амбициозных искателей приключений. И пусть ими движут '
                .'совершенно разные устремления, главное, этим ребятам важны не столько деньги и слава, сколько куда '
                .'более ценное – принципы и верность друзьям. И еще – служение Мечте. Что ж, пока по Гранд Лайн '
                .'плавают такие люди, Великая Эра Пиратов всегда будет с нами!'
            )
            ->setStudio($this->getStudio('Toei Animation'))
            ->setType($this->getType('tv'))
            ->addGenre($this->getGenre('Adventure'))
            ->addGenre($this->getGenre('Comedy'))
            ->addGenre($this->getGenre('Shounen'))
            ->addGenre($this->getGenre('Fantasy'))
            ->addName((new Name())->setName('Ван-Пис'))
            ->addName((new Name())->setName('Одним куском'))
            ->addName((new Name())->setName('ワンピース'))
            ->addSource((new Source())->setUrl('http://www.animenewsnetwork.com/encyclopedia/anime.php?id=836'))
            ->addSource((new Source())->setUrl('http://anidb.net/perl-bin/animedb.pl?show=anime&aid=69'))
            ->addSource((new Source())->setUrl('http://myanimelist.net/anime/21/'))
            ->addSource((new Source())->setUrl('http://cal.syoboi.jp/tid/350/time'))
            ->addSource((new Source())->setUrl('http://www.allcinema.net/prog/show_c.php?num_c=162790'))
            ->addSource((new Source())->setUrl('http://en.wikipedia.org/wiki/One_Piece'))
            ->addSource((new Source())->setUrl('http://ru.wikipedia.org/wiki/One_Piece'))
            ->addSource((new Source())->setUrl('http://ja.wikipedia.org/wiki/ONE_PIECE_%28%E3%82%A2%E3%83%8B%E3%83%A1%29'))
            ->addSource((new Source())->setUrl('http://www.fansubs.ru/base.php?id=731'))
            ->addSource((new Source())->setUrl('http://www.world-art.ru/animation/animation.php?id=803'))
            ->addSource((new Source())->setUrl('http://shikimori.org/animes/21-one-piece'));
    }
478537
public function arrstr(array $array) {
        $array = array_map(function($value) {
            return pg_escape_identifier((string) $value);
        }, $array);
        return $this->str(sprintf('{%s}', implode(',', $array)));
    }
779148
protected function implode( $array )
    {
        $retString = '';
        if ( empty( $array ) )
        {
            return '';
        }
        foreach ( $array as $key => $value )
        {
            if ( is_array( $value ) )
            {
                $value = $this->implode( $value );
            }
            $retString .= $key . ' ' . $value . ' ';
        }

        return $retString;
    }
939344
protected function getFileOptionForSaving($storages)
    {
        if (in_array(DriverInterface::IMAGE_STORAGE_STRING, $storages)) {
            return null;
        } elseif (in_array(DriverInterface::IMAGE_STORAGE_FILE, $storages)) {
            return sys_get_temp_dir() . '/tmp-image-' . rand();
        } else {
            throw new Exception\RuntimeException('cannot save to url storage');
        }
    }
1236673
public function odd(array $storage)
    {
        return $this->filter($storage, function ($value)
        {
            return $this->helper->math()->isOdd($value);
        });
    }
911341
private function _exec_array(array $request): ?string
  {
    if ( $this->check() ){
      return md5((string)$this->db->select_one($request));
    }
    return null;
  }
154604
public function storageVal($val)
    {
        if ($val === null || $val === '') {
            // Do not json_encode NULL values
            return null;
        }

        $val = $this->parseVal($val);

        if ($this->multiple()) {
            if (is_array($val)) {
                $val = implode($this->multipleSeparator(), $val);
            }
        }

        if (!is_scalar($val)) {
            return json_encode($val);
        }

        return $val;
    }
1180958
public function getDescriptionValue(array $items): string
    {
        $description = '';

        foreach ($items as $item) {
            $description .= 'Name:' . $item->getName();
            $description .= static::ATTRIBUTES_SEPARATOR . 'Sku:' . $item->getSku();
            $description .= static::ATTRIBUTES_SEPARATOR . 'Quantity:' . $item->getQuantity();
            $description .= static::ITEMS_SEPARATOR;
        }

        return $description;
    }
504731
public static function arrayToRegex($array)
    {
        if (isset($array)) {
            foreach ($array as $k => $item) {
                if(is_string($item)){
                    $array[$k] = $item;
                } else {
                    $array[$k] = "\"".$item."\"";
                }
            }
        }

        return implode('|', $array);
    }
40762
protected function getStoragePath(Storage $storage, FileKey $fileKey)
    {
        return ltrim($storage->getPathPrefix().'/'.$fileKey->getFilePath(), '/');
    }
86427
public function scanAction(Storage $storage)
    {
        $this->get('anime_db.storage.scan_executor')->export($storage);

        return $this->render('AnimeDbCatalogBundle:Storage:scan.html.twig', [
            'storage' => $storage,
        ]);
    }
435373
public function make(array $storage)
    {
        return new Slice(
            $this->helper,
            $storage,
            $this->withParameters ? $this->parameters : null
        );
    }
893100
public function getStorageKey(): string
    {
        return $this->_storage['storage_key'] ?? $this->getTypePrefix() . $this->getFlexType() . '@@' . spl_object_hash($this);
    }
1019026
public static function get(array $storage, $key, $default = null)
    {
        try
        {
            return static::findPath($storage, static::keys($key));
        }
        catch (\InvalidArgumentException $argumentException)
        {
            return $default;
        }
    }
1234391
private static function dumpArray(array $array) {
    $str = "[";
    foreach ($array as $value) {
      if (is_object($value)) {
        $str .= $value->__toString().", ";
      }
      else {
        $str .= $value.", ";
      }
    }
    $str = preg_replace("/, $/", "", $str)."]";
    return $str;
  }