Ds\Map::toArray

(PECL ds >= 1.0.0)

Ds\Map::toArray Convierte el mapa en un array

Descripción

public Ds\Map::toArray(): array

Convierte el mapa en un array.

Precaución

Los mapas donde las claves no son escalares no pueden ser convertidos en array.

Precaución

Un array tratará todas las claves numéricas como enteros, por ejemplo "1" y 1 como claves en el mapa resultará solo en 1 siendo incluido en el array.

Nota:

La conversión en array aún no es soportada.

Parámetros

Esta función no tiene parámetros.

Valores devueltos

Un array conteniendo todos los valores en el mismo orden que el mapa.

Ejemplos

Ejemplo #1 Ejemplo de Ds\Map::toArray()

<?php
$map
= new \Ds\Map([
"a" => 1,
"b" => 2,
"c" => 3,
]);

var_dump($map->toArray());
?>

El resultado del ejemplo sería algo similar a:

array(3) {
  ["a"]=>
  int(1)
  ["b"]=>
  int(2)
  ["c"]=>
  int(3)
}
add a note

User Contributed Notes 1 note

up
-1
foalford at gmail dot com
4 years ago
When using Hashable object as $key, Map::put() will not call the Hashable::hash() on the key until later. For example

<?
class Key implements \Ds\Hashable
{
protected $id;

public function __construct($id)
{
$this->id = $id;
}

public function equals($obj) : bool
{
return $this->id == $obj->id;
}

public function hash()
{
return $this->id;
}
}
$map = new \Ds\Map();
$myki = new Key('myki');

$map->put($myki, "Value String");

var_dump($map->get($myki));
echo 'Map::put() store the Hashable object and it cause error in toArray()'. PHP_EOL;
var_dump($map->toArray());
?>
To Top