- Apple Watch
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Vivo X200 Pro - a kétszázát!
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- Piros Arany kiadást kapott a kínai Z Fold7
- Samsung Galaxy S23 és S23+ - ami belül van, az számít igazán
- Apple iPhone 16 Pro - rutinvizsga
- Milyen okostelefont vegyek?
- Apple iPhone 17 - alap
- Nothing Phone 2a - semmi nem drága
Új hozzászólás Aktív témák
-
PazsitZ
addikt
Erről eszembe jutott, hogy nekem volt régen ilyen próbálkozásom az sql result gyors ki-extract-olására függvényből global változóként. Persze nem szép. Ma már nem is használom/használnék ilyet, mármint global változót.
(#8038) Lacces: Ennek nincs köze a mutatókhoz. A miértre a magyarázat annyi, hogy ez egy script nyelv.
$fetchResult = mysql_fetch_assoc($localpSQLResult);
if ($fetchResult){
foreach($fetchResult as $var_name => $var_value)
{
$var_name = "q_$var_name";
global $$var_name;
$localGlobalVarsArr[] = $var_name;
$$var_name = $var_value;
}
return true;
}
Így global változóként létrehoztam az sql eredményét egy q_ (query) prefix-es változóként.
De a neveket le is tároltam, hogy egy fajta garbage collect-ként üríteni tudjam őket.
Fetch esetén ugye mindig felülíródott a változó tartalma, következő querynél ez a gc opció default lefutott, de szükség esetén letiltható volt.(#8041) Sk8erPeter : Alapvetően szerintem nem ördögtől való dolog ez, persze azért nem kell túlzásba vinni.
Én pl. Factory pattern esetén szoktam használni.Bár itt nem változóként, használod fel a változóban tárolt sztringet, hanem osztálynévként, de a logika hasonló.
Definiálsz sztring konstans értéket a lehetséges osztályok neveivel, majd azáltal pédányosítod a megfelelő osztályt./**
*
* @param const $SQLLayerType SQLLayer constant
* @param DBObj $db
*/
public function __construct($SQLLayerType=null, DBObj $db=null) {
$list = array(SQLLayer::SELECT, SQLLayer::INSERT, SQLLayer::UPDATE, SQLLayer::REPLACE, SQLLayer::DELETE);
if(is_null($SQLLayerType) || !in_array($SQLLayerType, $list)){
$this->SQLLayerType = SQLLayer::SELECT;
}
else $this->SQLLayerType = $SQLLayerType;
$Class = "SQL" . ucfirst($this->SQLLayerType);
$this->SQLObj = new $Class($this->SQLLayerType, $db);
if(!is_null($db)) $this->SQLObj->table($db->getTableName());
}
Új hozzászólás Aktív témák
- Linux kezdőknek
- Őskoczka
- One otthoni szolgáltatások (TV, internet, telefon)
- Asustor NAS
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- exHWSW - Értünk mindenhez IS
- Apple Watch
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Vivo X200 Pro - a kétszázát!
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- További aktív témák...
- ÚJ Bontatlan Apple iPhone 17 Pro 256GB Cosmic Orange ! 1 ÉV nemzetközi APPLE GARANCiA
- Dell Precision 3591 15.6" FHD IPS Ultra 7 165H RTX 2000 Ada 32GB 1TB NVMe gar
- - 73% A+ Thinkpad T14 / erős akku! gyárilag Magyar / 14" FHD / r5-4650u // 32/256G / +SZLA +GARANCIA
- Gamer PC-Számítógép! Csere-Beszámítás! Ryzen 7 3700X / RTX 2070 Super / 32GB DDR4
- Precision 5560 15.6" FHD+ IPS i7-11850H RTX A2000 32GB 512GB NVMe ujjlolv IR kam gar
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest