Forum » Programiranje » php dodajanje ključ array
php dodajanje ključ array
zacetnik11 ::
Pozdravljeni,
imam eno mogoče trivialno vprašanje, vednar ne najdem rešitve ;-)
Imam array in v pogoju želim dodat ključ če ta obstaja.
Kako rešit da lahko po želji dodajam kjuče?
Hvala za pomoč.
imam eno mogoče trivialno vprašanje, vednar ne najdem rešitve ;-)
Imam array in v pogoju želim dodat ključ če ta obstaja.
$zaposelni[] = array( 'Ime' =>$podatki->ime, 'Priimek' =>$podatki->priimek, if($podatki->datumRojstva != '') 'Datum Rojstva' => $podatki->datumRojstva );
Kako rešit da lahko po želji dodajam kjuče?
Hvala za pomoč.
hobbit ::
Znotraj arraya ne moreš pisati extra kode(če pa jo že lahko je to extra grdo.)
lahko pa rečeš:
$zaposleni = (array)$zaposleni;
if (isset($podatki['datumRojstva'])) {
$zaposelni['datumRojstva'] = $podatki['datumRojstva'];
}
verjetno pa obstaja tudi kakšna krajša/lepša rešitev. google it.
Moraš pa poznati razliko "dodat ključ če ta obstaja." ali pa "dodat ključ, če ima ta ključ nastavljeno vrednost".
lahko pa rečeš:
$zaposleni = (array)$zaposleni;
if (isset($podatki['datumRojstva'])) {
$zaposelni['datumRojstva'] = $podatki['datumRojstva'];
}
verjetno pa obstaja tudi kakšna krajša/lepša rešitev. google it.
Moraš pa poznati razliko "dodat ključ če ta obstaja." ali pa "dodat ključ, če ima ta ključ nastavljeno vrednost".
Zgodovina sprememb…
- spremenil: hobbit ()
zacetnik11 ::
To vem da ne moreš, napisal sem samo tako da se vidi kaj želim.
Nisem pa našel nobene rešitve, zato sem se še obrnil na slo-tech.
Tako kot si napisal, želim dodat ključ če ima ta vrednost ;-)
Nisem pa našel nobene rešitve, zato sem se še obrnil na slo-tech.
Tako kot si napisal, želim dodat ključ če ima ta vrednost ;-)
Stari89 ::
Uporabi array_push().
Namesto array_push bi morda šlo celo tole:
Vem, da je banalen primer, ampak pri kodiranju uporabljaj angleščino tako za imena spremenljivk, kot parametrov. Slovenščina (ali katerikoli drug jezik) naj bo samo v fajlih za prevode in v podatkih na bazi. Nikoli v kodi. Še v komentarjih raje ne.
LP
$zaposelni = array( 'Ime' => $podatki->ime, 'Priimek' => $podatki->priimek ); if(!empty($podatki->datumRojstva)) { // !empty($x) je veliko lepše od $x != "" array_push($zaposleni, 'Datum rojstva' => $podatki->datumRojstva); }
Namesto array_push bi morda šlo celo tole:
$zaposleni[] = 'Datum rojstva' => $podatki->datumRojstva;
Vem, da je banalen primer, ampak pri kodiranju uporabljaj angleščino tako za imena spremenljivk, kot parametrov. Slovenščina (ali katerikoli drug jezik) naj bo samo v fajlih za prevode in v podatkih na bazi. Nikoli v kodi. Še v komentarjih raje ne.
LP
zacetnik11 ::
@Stari89 hvala za pomoč, vendar sem imel to že narejeno in ni prav, ker s array_push()dodam novo polje v array in ne polju nov zapis.
Tvoja rešitev:
Jaz bi pa rad rešil, če datum obstaja ga vnese, če ne obstaja ga ne vnese v array
Tvoja rešitev:
0: Ime "test1" Priimek "test1_p" 1: Datum rojstva "2009-09-19" 2: Ime "test2" Priimek "test2_p" 3: Datum rojstva "2009-04-16"
Jaz bi pa rad rešil, če datum obstaja ga vnese, če ne obstaja ga ne vnese v array
0: Ime "test1" Priimek "test1_p" Datum rojstva "2009-09-19" 1: Ime "test2" Priimek "test2_p" 2: Ime "test3" Priimek "test3_p" Datum rojstva "2015-05-22"
DeeJay ::
Zakaj pa ključ ne pustiš prazen, če ni podatka? Tko maš vsaj kompleten array identičen in pri izpisu samo preverjaš ali ima ključ vrednost ali ne. Drugače boš mogu dodatno preverjat še, če ta ključ sploh obstaja oziroma boš mel en kup "index 'Datum rojstva' does not exist".
Če pa res rabiš to kar si napisal, potem pa nekaj takega:
Nisi napisal od kod dobivaš podatke v $podatki in v kakšni obliki so.
Če pa res rabiš to kar si napisal, potem pa nekaj takega:
Nisi napisal od kod dobivaš podatke v $podatki in v kakšni obliki so.
$zaposleni = array( 'Ime' => $podatki->ime, 'Priimek' => $podatki->priimek ); if(!empty($podatki->datumRojstva)) { $zaposleni['Datum rojstva'] => $podatki->datumRojstva; } $vsi_zaposleni[] = $zaposleni; // v $vsi_zaposleni so že prejšnji zaposleni in dodaš zraven trenutnega, ki si ga preveril
Zgodovina sprememb…
- spremenil: DeeJay ()
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | [C#] Evidenca osebOddelek: Programiranje | 1162 (847) | DaMachk |
» | metoda #get, #set ---> c#Oddelek: Programiranje | 1259 (1143) | fokz8 |
» | [C#] današnji datum in rojsni datumOddelek: Programiranje | 4733 (4220) | vojko20 |
» | [Access 2007]Oddelek: Programiranje | 2638 (2238) | urosz |
» | Še malo teženja o phpOddelek: Programiranje | 1781 (1370) | rc-car |