Syntax fråga (funktionsanrop och array)

PHP

2 svar · 248 visningar · startad av Compusa

Medlem sedan jan. 20023 327 inlägg
Trådstart#1

Hej,
just nu gör jag så här:

$products = getProductCatalog();
$product = $products[$_GET['id']];

Men skulle vilja göra något åt detta hållet, dvs slippa mellanlagringen i $products.

$product = getProductCatalog()[$_GET['id']];

Funktionen getProductsCatalog returnerar en array. Är ganska säker på att detta ska gå men mina PHP-kunskaper är ringrostiga ;)

Medlem sedan juni 20031 837 inlägg
#2

varför inte göra om funktionen getProductsCatalog() så att den tar emot produkt id?
i dina exempel använder du getProductCatalog d.v.s. utan s.
är det två olika funktioner eller bara felstavning?

Medlem sedan jan. 20023 327 inlägg
#3

The_Hulk skrev:

varför inte göra om funktionen getProductsCatalog() så att den tar emot produkt id?
i dina exempel använder du getProductCatalog d.v.s. utan s.
är det två olika funktioner eller bara felstavning?

Jo så hade jag gjort själv om det var jag som bestämde. Gör en labb där jag har färdiga stubbar att fylla i. getProductCatalog är utan s och jag antar att det avser en katalog med produkter, dvs produktkatalog och ska således vara utan s.

Jag kommer nog göra så som du säger och så som jag tycker det bör vara ändå dvs...

function getProductCatalog() {
    // code
}

function getProductByID($id) {
    $products = getProductCatalog();
    return $products[$id];
}

$product = getProductByID($_GET['id']);
254 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
117 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)