php. Structura datelor din dicționar, (întreg, șir) ca cheie

În dicționarul Python pot fi utilizate tupluri ca chei. Așadar, pot folosi următoarea combinație cheie: (integer, string) . Vreau să fac același lucru în PHP. Standard PHP array poate folosi numai șiruri sau numere întregi. SplObjectStorage utilizează numai obiecte ca cheie.

Cum poate obține aceeași funcționalitate în PHP?

0
Puteți stoca cheile întregi ca un șir, cum ar fi array ('123' => 'foo'); , deși doriți să amestecați cheile numerice și șirul este neclar.
adăugat autor Bojangles, sursa
JamWaffles, tuplele sunt de fapt o structură destul de comună găsită în multe limbi.
adăugat autor Emil Vikström, sursa

2 răspunsuri

Răspunsul simplu este că nu puteți. Funcțional echivalent, deși ar trebui să fie un simplu:

$array["$int,$str"]

Sau poate o matrice multidimensională:

$array[$int][$str]
0
adăugat

PHP nu are niciun tip de date de tip tuple, dar puteți face cu ușurință un wrapper care combină un int și un șir într-o reprezentare numai a șirului:

function t($num, $str) {//t for tuple
  return $num . ', ' . $str;
}

$array[t(15, "hello")] = $random_data;
0
adăugat
PHP România, Moldova
PHP România, Moldova
173 participanți

Vorbim despre Yii, Laravel, Symphony, MySQL, PgSQL, WP, OpenCart... Pentru confort, opriți notificările. Parteneri: https://ciupacabra.com @js_ro @node_ro @python_ro @seo_ro @Romania_Bot Offtop: @holywars_ro Joburi: @php_job @Grupuri_IT