Jump to content
php.lv forumi

Vajadzīgs padoms sasitībā ar klasēm


DMG

Recommended Posts

Pat nezinu kā to pareizāk noformulēt, lai nebūtu pārpratumu, tāpēc nepārmetiet, bet vienkārši jautājiet, ja rodas neskaidrības ;)

 

Tātad jautājums būtībā ir tāds: vai programmiski ir iespējams izveidot jaunu klasi, lai tās atribūts saturētu kādu padotu vērtību? Vienkārši man ir tāds uzdevums dots, kur ir jau pāris klases jādefinē un jāparedz iespēju, ka atkarībā no ievadītajām vērtībām var būt nepieciešama vēl kāda vai vairākas klases.

Link to comment
Share on other sites

xPtv45z: es zinu, ka visu ko var panākt, bez jaunas klases konstruēšanas, bet man ir konkrēts uzdevums "Panākt, lai jaunas klases nepieciešamības gadījumā tas neprasītu izmaiņas sistēmas kodā". Un tāpēc jautāju idejas, kā to varētu panākt ;)

Link to comment
Share on other sites

gan jau ka nevajag šitā, bet kā sapratu, tā ar atbilde:

 

fails ./extra_methods/bar.php

<?php
function bar($self, $a, $b) {
return ($a + $b) * $self->c;
}

 

fails ./foo.php

<?php
class Foo {
public $c;

public function __construct($c) {
	$this->c=$c;
}

public function __call($what, $with=array()) {
	include_once('extra_methods/'.$what.'.php');
	return call_user_func_array($what, array_merge(array($this), $with));
}
}
// ----------------
$foo = new Foo(3);
echo $foo->bar(1,2); // (1 + 2) * 3 = 9

Edited by v3rb0
Link to comment
Share on other sites

×
×
  • Create New...