Portál AbcLinuxu, 10. května 2025 05:39
obsah prvni.php : function prvni_func(){....} obsah druha.php : function druha_func(){....}A pak dále zavolat funkci
$volba = 'prvni'; include $volba.".php"; $volba_func(); // zavolání první funkce $volba = 'druha'; include $volba.".php"; $volba_func(); // zavolání druhé funkce
$volba = 'prvni'; $prvni = new $volba(); $prvni->func(); // zavolání první metody $volba = 'druha'; $druha = new $volba(); $druha->func(); // zavolání druhé metody
x.php: return function (....) { } main.php: $fun = require x.php; $fun();akorát nebudeš mít tu funkci globálně přístupnou
some_func()
a zároveň je instalované rozšíření runkit
:
$volba = 'prvni'; include $volba.".php"; some_func(); runkit_function_remove('some_func'); $volba = 'druha'; include $volba.".php"; some_func();
$volba = 'Prvni'; $v = new $volba(); $v->delejNeco(); $volba = 'Druha'; $v = new $volba(); $v->delejNeco();No a aby to celé fungovalo, tak na začátku udeláš:
spl_autoload_register(function($class) { $filename = 'class/'.str_replace('\\', DIRECTORY_SEPARATOR, $class).'.php'; if (file_exists($filename)) { require($filename); } });Pak budeš mít soubory
class/Prvni.php
a class/Druhy.php
, kde bude definice těch dvou tříd.
Jen se ještě zamysli nad tím, co se stane, když ti někdo podstrčí opravdu ošklivou volbu.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.