Diskuze: Zjednodušení podmínky
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 7 zpráv z 7.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
a čo tak cyklus? .. možno by nebolo od veci ak by si sem poslal celý ten kód ktorý chceš zredukovať
můžeš to hodit do ternarního operátoru jakby, ale myslím si ,že
jednodušší už být nemůže
(is_array($doc->name))?$name = implode(" ", $doc->name):$name = $doc->name;
Ahoj, zjednodušit to můžeš, ale nebude to asi moc dobře čitelné a jasné, jako tvoje stávající řešení:
<?php
$doc = "pole nebo hodnota";
$decision = [1 => implode(" ", (array)$doc), 0 => $doc];
echo $decision[(array)$doc === $doc];
Zkus, jestli ti to půjde dle očekávání.
Můžeš volat název proměnné ze stringu z pole, celý kód by pak vypadal nějak takto.
$polozky = array("name", "surname", /* a další věci z těch sedmi */);
foreach ($polozky as $polozka)
if ( is_array($doc->$polozka) )
$$polozka = implode(" ", $doc->$polozka); // uloží jako proměnnou s názvem té položky
else
$$polozka = $doc->$polozka;
Já bych to víc nezjednodušoval. Možná jedině pomocí ternárního operátoru.
$name = is_array($doc->name) ? implode(" ", $doc->name) : $doc->name;
Zobrazeno 7 zpráv z 7.