16. august 2005 - 15:08
Der er
4 kommentarer og
2 løsninger
God programmering i PHP?
Hej,
er det ligegyldigt at jeg går og unsetter mine variabler når jeg er færdi med at bruge dem i PHP?
Har i andre gode tips, eller hvor kan jeg læse om det?
ex.
class ny_bruger_indstillinger {
var $antal_req_pr_side;
var $antal_koebsfelter_ved_ny_req;
var $fejl = array();
function antal_req_pr_side($setAntalRegPrSide) {
is_numeric($setAntalRegPrSide) ? $this->antal_req_pr_side=$setAntalRegPrSide : $this->fejl[]=$GLOBALS['SPROG']['CLASS']['NY_BRUGER_INDSTILLINGER']['REQ_SKAL_VÆRE_TAL'];
unset($setAntalRegPrSide);
}
16. august 2005 - 15:28
#1
Ja og nej,
variabler unsettes automatisk
filer bliver lukket
database connections lukkes
osv.
php er god til at 'rydde op' og gør det automatisk når scriptet er kørt færdigt.
men sådan nogle rester optager plads (ressourcer) sålænge de ikke er ryddet op. Hvis scriptet er stort og kører længe kan det gå hen og blive dyrt.
simpel variabel
$i = 5;
fylder 10..100 bytes. ikke værd at rydde op.
komplex variabel
$arr = array( array( 1,2,3,4 ),
"Gustaf Olsson",
new PersonObject( $age, $salary )
)
kan potentielt fylde en mass. ofte værd at rydde op.
simpel fil
$fp = fopen("filnanv.txt","r");
fylder adskillige kilobytes. værd at rydde op hvis der er mange
DB connection
$conn = mysql_connect( $server, $user, $password );
opretter et nyt process-workspace på serveren, 2..3 megabytes
værd at rydde op, men også værd at beholde hvis det skal bruges igen et øjeblik efter i scriptet (oprettelsen tager tid).
Mestendels handler det om at tænke sig om og gøre det der er bedst i situationen :-))
mvh JakobA
Slettet bruger
16. august 2005 - 15:28
#2
Hvis du regner med at bruge dine variabelnavne senere i samme klasse/funktion er det da smart at unsette dem, men i den virkelige verden gør jeg det ikke.
Snakker vi globale variabler synes jeg dog at det er klart at du bør gøre det.