2010-01-19 7 views
5

voglio creare array con chiavi oggetto in PHP, vale a dire qualcosa di simile:Come creare strutture dati di tipo array con chiavi oggetto in PHP?

<?php 
$keyObject = new KeyObject; 
$valueObject = new ValueObject; 

$hash = array($keyObject => $valueObject); 

Tuttavia, questo genera un errore. Gli array possono avere solo numeri interi o chiavi di stringa. Finisco per dover fare qualcosa di simile:

Questo funziona, ma non è così pulito come vorrei. C'è un modo migliore? (Forse qualcosa dalla SPL che mi manca ...)

TIA

risposta

10

È possibile utilizzare SplObjectStorage dalla SPL come una mappa con chiavi oggetto:

$map = new SplObjectStorage; 
$key = new StdClass; 
$value = new StdClass; 
$map[$key] = $value; 
+0

brillante. Grazie! –

Problemi correlati