PHP kodo trumpinimas, ECHO ir PRINT bandymai
Sėdžiu ir programinu forumą minimalų mūsų SAVI sistemai.
Parašęs eilinį Mysql query kuris skaičiuoja postus ir pan. netyčia
pabandžiau rašyti tokį kodą.
…
$table->SetCellContent($row,4,$db->get_value(“SELECT sum(id) from forumas_diskusija where group_id=’”.$val['id'].”‘”)|0);
…
}
Pradžiai, table klasės metodas SetCellContent užildo celės td turinį.
$table->SetCellContent($eilutes_nr,$stuleplio_nr,$reiksme);
Jei reikšmė $reikme yra null tai tada gaunasi iš to td kaip ir <td></td> o expleris pvz tokių eilučių nėra.
Panaudojus kodą $c=$a|0; kaip ir esmės nėra, bet visdėlto jei $a==null tai $c gausis 0, to ko man ir reikėjo. Gerai panaudoti bitinį arba :).
kas nežino kas tai tai loginio operatoriaus panaudojimas. Ną ką bandau ką nors dar paekperimentuoti:
$c = 5 or 4;
echo $c; // grazina 5
print $c; // grazina 5
echo 5 or 4; // grazina 1 !!!
print 5 or 4; // grazina 5 !!!
print 5|8; // grazina 13
echo 5|8; // grazina 13
?>
Tai va ir matosi echo ir print skirtumai. Tik va pasidarė įdomu toks dalykas: vieno dalyko 1 atveju (5 or 4) print ir echo rezultatai skiriasi, bet 2 atveju (5|8) rezultatai vienodi. Nesupratau. Vadinasi nesu asas. Reikės studinti…

Operator precedence?
Bent jau Perle 'or' yra žymiai mažesnio precedence, tad sudėliojus skliaustelius Perle būtų taip:
(print 5) or 8;
print (5 | 8);
Su PHP nežinau, bet turbūt panašiai?
a velnias zino :) reikės kokią dieną pagooglinti. :)
Biški pataisiau postą per db. dabar atsirado tos eilutės kurių nesimatė.