private function phpEncodeArray(array $array)
    {
        $isPlainArray = function (array $value) {
            return ((count($value) === 0)
                || (
                    (array_keys($value) === range(0, count($value) - 1))
                    && (0 === count(array_filter(array_keys($value), 'is_string'))))
            );
        };

        if ($isPlainArray($array)) {
            return '['.implode(', ', array_map([$this, 'phpEncodeValue'], $array)).']';
        }

        return '['.implode(', ', array_map(function ($key) use ($array) {
            return $this->phpEncodeValue($key).' => '.$this->phpEncodeValue($array[$key]);
        }, array_keys($array))).']';
    }
private function phpEncodeArray(array $array)
    {
        $isPlainArray = function (array $value) {
            return ((count($value) === 0)
                || (
                    (array_keys($value) === range(0, count($value) - 1))
                    && (0 === count(array_filter(array_keys($value), 'is_string'))))
            );
        };

        if ($isPlainArray($array)) {
            return '['.implode(', ', array_map([$this, 'phpEncodeValue'], $array)).']';
        }

        return '['.implode(', ', array_map(function ($key) use ($array) {
            return $this->phpEncodeValue($key).' => '.$this->phpEncodeValue($array[$key]);
        }, array_keys($array))).']';
    }
private function phpEncodeArray ( array $ array ) { $ isPlainArray = function ( array $ value ) { return ( ( count ( $ value ) === 0 ) || ( ( array_keys ( $ value ) === range ( 0 , count ( $ value ) - 1 ) ) && ( 0 === count ( array_filter ( array_keys ( $ value ) , 'is_string' ) ) ) ) ) ; } ; if ( $ isPlainArray ( $ array ) ) { return '[' . implode ( ', ' , array_map ( [ $ this , 'phpEncodeValue' ] , $ array ) ) . ']' ; } return '[' . implode ( ', ' , array_map ( function ( $ key ) use ( $ array ) { return $ this -> phpEncodeValue ( $ key ) . ' => ' . $ this -> phpEncodeValue ( $ array [ $ key ] ) ; } , array_keys ( $ array ) ) ) . ']' ; }
Recursively PHP encode an array

@param array $array

@return string
Recursively PHP encode an array