Do prodeje jde tichá bezdrátová herní myš Logitech PRO X2 SUPERSTRIKE s analogovými spínači s haptickou odezvou (HITS, Haptic Inductive Trigger System). Cena je 4 459 Kč.
Microsoft na GitHubu zveřejnil zdrojový kód projektu LiteBox, jedná se o 'knihovní operační systém' (library OS) zaměřený na bezpečnost, využívající systémovou architekturu LVBS k ochraně jádra před útoky z uživatelského prostoru. LiteBox je napsán v Rustu a uvolněný pod licencí MIT. Projekt je teprve v rané fázi vývoje.
BreezyBox je open-source shell a virtuální terminál pro populární jednočip ESP32. Nabízí základní unixové příkazy, sledování aktuálního pracovního adresáře (CWD), jednoduchý instalátor a spouštěč aplikací v podobě ELF binárních souborů, zabudovaný HTTP server nebo třeba ovládání WiFi - ukázka použití coby 'malého osobního počítače'. Ačkoliv je BreezyBox inspirovaný BusyBoxem, oproti němu má tento projekt několik externích závislostí, zejména na ESP-IDF SDK. BreezyBox je dostupný pod licencí MIT.
Byl představen cross-assembler xa.sh, napsaný čistě v Bourne shell skriptu. Tento nástroj umožňuje zpracovávat assemblerový kód pro Intel 8080, přičemž je možné snadno přidat podporu i pro další architektury, například 6502 a 6809. Skript využívá pouze různé běžné unixové příkazy jako jsou awk, sed nebo printf. Skript si lze stáhnout z GitHubového repozitáře projektu.
Byla představena nová verze modelu Claude Opus 4.6 od společnosti Anthropic. Jako demonstraci možností Anthropic využil 16 agentů Claude Opus 4.6 k vytvoření kompilátoru jazyka C, napsaného v programovacím jazyce Rust. Claude pracoval téměř autonomně, projekt trval zhruba dva týdny a náklady činily přibližně 20 000 dolarů. Výsledkem je fungující kompilátor o 100 000 řádcích kódu, jehož zdrojový kód je volně dostupný na GitHubu pod licencí Creative Commons.
Kultovní britský seriál The IT Crowd (Ajťáci) oslavil dvacáté výročí svého prvního vysílání. Sitcom o dvou sociálně nemotorných pracovnících a jejich nadřízené zaujal diváky svým humorem a ikonickými hláškami. Seriál, který debutoval v roce 2006, si i po dvou dekádách udržuje silnou fanouškovskou základnu a pravidelně se objevuje v seznamech nejlepších komedií své doby. Nedávné zatčení autora seriálu Grahama Linehana za hatecrime však vyvolává otázku, jestli by tento sitcom v současné Velké Británii vůbec vznikl.
Společnost JetBrains oznámila, že počínaje verzí 2026.1 budou IDE založená na IntelliJ ve výchozím nastavení používat Wayland.
Společnost SpaceX amerického miliardáře Elona Muska podala žádost o vypuštění jednoho milionu satelitů na oběžnou dráhu kolem Země, odkud by pomohly zajistit provoz umělé inteligence (AI) a zároveň šetřily pozemské zdroje. Zatím se ale neví, kdy by se tak mělo stát. V žádosti Federální komisi pro spoje (FCC) se píše, že orbitální datová centra jsou nejúspornějším a energeticky nejúčinnějším způsobem, jak uspokojit rostoucí poptávku po
… více »Byla vydána nová verze 2.53.0 distribuovaného systému správy verzí Git. Přispělo 70 vývojářů, z toho 21 nových. Přehled novinek v poznámkách k vydání.
Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 216. sraz, který proběhne v pátek 20. února od 18:00 v Red Hat Labu (místnost Q304) na Fakultě informačních technologií VUT v Brně na ulici Božetěchova 1/2. Tématem srazu bude komunitní komunikační síť MeshCore. Jindřich Skácel představí, co je to MeshCore, předvede nejrůznější klientské zařízení a ukáže, jak v praxi vypadá nasazení vlastního repeateru.
class Kontrola
{
public function __construct($array)
{
return 'foo';
}
public function TestOne($a, $b, $c) //Potřebné 3 parametry
{
return 'foo';
}
public function TestTwo() //Bez parametru
{
return 'foo';
}
public function TestTre($a) //Potřebný 1 parametr
{
}
}
$array=array('TestOne'=>'0','0','0',
'TestOne'=>'0','2','0',
'TestTre'=>'2',
'TestTwo',
'TestOne'=>'2','3','10',
);
$Kontrola = New Kontrola($array);
echo $Kontrola;
Jak mám tedy v konstruktoru volat jednotlivé metody s příslušnými parametry, když každá metoda má jiný počet parametrů. Poradí prosím někdo? Děkuji
Řešení dotazu:
Díky
jako vy chcete neco takoveho?
$array=array('TestOne'=>array('0','0','0'),
'TestOne'=>array('0','2','0'),
'TestTre'=>array('2'),
'TestTwo'=>array(),
'TestOne'=>array('2','3','10'),
);
public function __construct($array)
{
foreach($array as $key=>$params){
var_dump(call_user_func_array('parent::'.$key,$params));
}
}
array($this, 'parent::'.$key)'Class::method' je pro metody třídy (a funguje v poměrně novém PHP); varianta array($object, 'method') je pro normální metody objektu. Tazatel spíš bude chtít to druhé, ale těžko říci...
tak tady mate jeden nazev funkce, dva pravdepodobne funkcni kody, pro jistotu pridam i odkaz do dokumentace - http://php.net/manual/en/function.call-user-func-array.php
vite urcite, co chcete?
<?php
class Kontrola
{
public function __construct($array)
{
foreach($array as $key => $value){
call_user_func_array(array(&$this, $key) , $value );
}
}
public function TestOne($a, $b, $c) //Potřebné 3 parametry
{
echo "TestOne 1: $a 2: $b 3: $c\n";
return 'foo';
}
public function TestTwo() //Bez parametru
{
echo "TestTwo\n";
return 'foo';
}
public function TestTre($a) //Potřebný 1 parametr
{
echo "TestTre 1: $a\n";
return 'bar';
}
}
$array=array('TestOne'=>array('0','0','0'),
'TestOne'=>array('0','2','0'),
'TestTre'=>array('2'),
'TestTwo'=>array(),
'TestOne'=>array('2','3','10')
);
$Kontrola = New Kontrola($array);
no tak treba takhle... zaklady php :)
class Kontrola
{
public function __construct($array)
{
foreach($array as $map){
call_user_func_array(array(&$this, $map[0]) , $map[1] );
}
}
public function TestOne($a, $b, $c) //Potřebné 3 parametry
{
echo "TestOne 1: $a 2: $b 3: $c\n";
return 'foo';
}
public function TestTwo() //Bez parametru
{
echo "TestTwo\n";
return 'foo';
}
public function TestTre($a) //Potřebný 1 parametr
{
echo "TestTre 1: $a\n";
return 'bar';
}
}
$array=array(array('TestOne',array('0','0','0')),
array('TestOne',array('0','2','0')),
array('TestTre',array('2')),
array('TestTwo',array()),
array('TestOne',array('2','3','10'))
);
$Kontrola = New Kontrola($array);
$array=array('TestOne'=>array('0','0','0'),
'TestOne'=>array('0','2','0'),
'TestTre'=>array('2'),
'TestTwo'=>array(),
'TestOne'=>array('2','3','10')sa napr. použije$array=array(('TestOne', '0','0','0'),
('TestOne', '0','2','0'),
('TestTre', '2'),
('TestTwo'),
('TestOne', '2','3','10')(a náležite sa upraví ten kód)
):
<?php
class Kontrola
{
public function __construct($array)
{
foreach($array as $rec){
call_user_func_array(array(&$this, $rec[0]) , $rec[1] );
}
}
public function TestOne($a, $b, $c) //Potřebné 3 parametry
{
echo "TestOne 1: $a 2: $b 3: $c\n";
return 'foo';
}
public function TestTwo() //Bez parametru
{
echo "TestTwo\n";
return 'foo';
}
public function TestTre($a) //Potřebný 1 parametr
{
echo "TestTre 1: $a\n";
return 'bar';
}
}
$array=array(array('TestOne',array('0','0','0')),
array('TestOne',array('0','2','0')),
array('TestTre',array('2')),
array('TestTwo',array()),
array('TestOne',array('2','3','10'))
);
$Kontrola = New Kontrola($array);
TestOne 0 0 0 TestTre 2 TestTwo TestOne 2 3 10který se načte a ověří, že zavolání metod vyprodukuje očekávané výsledky. Na unit test je vhodný nějaký framework, ale coby zadávání test cases pro jednoduché funkce to není tak špatné řešení -- lepší než pro ně patlat kód. Prasečina je totiž representovat data kódem...
taky to muze pouzit na nejake dynamicke nacitani modulu a extra funkce nejake podstranky... treba na urcitem miste na strance bude priznak s nazvem tridy a metody a tim to pak zavolat
bezpecnost samozrejme neresim :)
class Kontrola
{
public function __construct($array)
{
foreach($array as $test) {
$reflectionMethod = new ReflectionMethod($this, $test[0]);
echo $reflectionMethod->invokeArgs($this, $test[1]);
}
}
public function TestOne($a, $b, $c) //Potřebné 3 parametry
{
return 'one';
}
public function TestTwo() //Bez parametru
{
return 'two';
}
public function TestTre($a) //Potřebný 1 parametr
{
return "three";
}
}
$array = [
['TestOne', ['0','0','0']],
['TestOne', ['0','2','0']],
['TestTre', ['2']],
['TestTwo', []],
['TestOne', ['2','3','10']]
];
new Kontrola($array);
Tiskni
Sdílej: