PHP 8.4.0 RC4 available for testing

Ds\Map::toArray

(PECL ds >= 1.0.0)

Ds\Map::toArray Convertit la carte en un tableau

Description

public Ds\Map::toArray(): array

Convertit la carte en un tableau.

Attention

Les cartes où les clés ne sont pas scalaires ne peuvent pas être converties en tableau.

Attention

Un tableau traitera toutes les clés numériques comme des entiers, par exemple "1" et 1 en tant que clés dans la carte ne résultera qu'en 1 étant inclus dans l'array.

Note:

La conversion en tableau n'est pas encore supportée.

Liste de paramètres

Cette fonction ne contient aucun paramètre.

Valeurs de retour

Un tableau contenant toutes les valeurs dans le même ordre que la carte.

Exemples

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

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

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

Résultat de l'exemple ci-dessus est similaire à :

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