Jump to content
php.lv forumi

Laikam lieta ar klasēm


yeahz

Recommended Posts

Ir šāds mainīgais:

$value[$what['title']]

 

Tā kā man viņš vienmēr būs jāraksta šādā stilā, tad nav iespējams kaut kā viņu pārveidot par vienu variabli (kaut kā šitā - $value['title'] vai $what['title'])? Tur kur ir title, tur ir daudz dažādi iespējamie vārdi, tāpēc nevar viņu visu (abus variabļus) pielīdzināt kādam citam variablim. Tā kā no klasēm neko nejēdzu, tad ar viņām ir iespējams ko tādu dabūt gatavu?

Link to comment
Share on other sites

Protams var arī klases izmantot (būs īsāk, krutāk)

 

class CoolClass {
 private $value;
 private $what;  

 public function __construct($value, $what) {
   $this->value = $value;
   $this->what = $what;
 }

 public function __get($name) {
   return $this->value[$this->what[$name]];
 }
}

$cool_class = new CoolClass($value, $what);
echo $cool_class->title; // izvadīs $value[$what['title']];

Link to comment
Share on other sites

Paldies par abiem variantiem rATRIJ. Kāpēc klases? - Īsti nezinu :D Drošvien tāpēc, ka nevarēju izdomāt, kā to panākt, un tā kā klases nepārzinu, tad nācu pie tāda secinājuma.

 

Briedi:

.. tāpēc nevar viņu visu (abus variabļus) pielīdzināt kādam citam variablim.
:)

 

Galvenais man bija, lai strādā ar īsāku variantu, nevis divi viariabļi vienmēr jāraksta (un tas title var mainīties uz ko citu).

Link to comment
Share on other sites

ja tie abi ir globāli masīvi, tad īsāk var caur funkciju

function isaak($k) {
   global $value, $what;
   return $value[$what[$k]];
}
isaak('title');

 

imho, labāk tomēr uzrakstīt skaidri, kā ir. tāpat jau bija īsi

Edited by 2easy
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...