to unset or not to unset?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

Ozzie PHP

Ozzie PHP

20/04/2011 14:04:28
Quote Anchor link
To be or not to be!

Ahum... ik bedoel dus 'to unset or not to unset'. That's my question!

Normaal gesproken als je gebruik maakt van classes zijn variabelen alleen binnen de functies in de class aanwezig. Daar hoef je dus niks te unsetten.

Ik ben nu echter bezig met een 'traditioneel' stukje code (dus geen classes) en ik vraag me af of het handig / netjes / raadzaam is om iedere variabele nadat ik die gebruikt heb te unsetten. Ik weet dat PHP helemaal aan het eind van het script zelf alle variabelen opruimt, maar ik vind het er wel netjes uitzien als aan het einde van het script er geen gebruikte variabelen meer aanwezig zijn (waardoor PHP ze dus ook niet meer hoeft op te ruimen). Echter, het gaat inmiddels om zoooveel variabelen dat ik telkens opnieuw variabelen aan het unsetten ben. Ik vraag me af of al die extra regels code nog wel zinvol zijn en of ik nu niet de plan aan het misslaan ben. Wat zeggen jullie? Wel of niet iedere variabele die je gebruikt hebt unsetten? Graag ook met onderbouwing (dus bijvoorbeeld niet 'ik unset nooit variabelen want daar heb ik geen zin in.')
Gewijzigd op 20/04/2011 14:05:16 door Ozzie PHP
 
PHP hulp

PHP hulp

15/01/2025 20:00:53
 
Jelmer -

Jelmer -

20/04/2011 14:37:06
Quote Anchor link
"Traditioneel" scripten betekent toch niet dat je geen functies mag gebruiken?
 
Ozzie PHP

Ozzie PHP

20/04/2011 14:41:43
Quote Anchor link
ja dat klopt... maar het gaat in dit geval om een grote lap code achter elkaar waarin verder geen functies nodig zijn en dus ook niet voorkomen.

Maar moet ik wel of niet unsetten?
 
Jelmer -

Jelmer -

20/04/2011 16:02:33
Quote Anchor link
Je snijdt jezelf in de vingers door overal unset te moeten typen, of je snijdt jezelf in de vingers doordat je per ongeluk een variabele voor 2 verschillende dingen gebruikt, door elkaar.

Als je dan toch al jezelf in je vingers snijdt door geen functies (lang leve self-documenting code, eigen scopes, en return om eruit te springen!) te gebruiken zou ik ook niet overal unset neerzetten. Dat is eigenlijk alleen handig als je of isset gaat gebruiken of met veel data werkt en bang bent dat je geheugen vol loopt. Je moet dan natuurlijk wel goeie variabelenamen gaan verzinnen om te voorkomen dat ze botsen.

... waarom toch geen functies?
 
Ozzie PHP

Ozzie PHP

20/04/2011 20:36:08
Quote Anchor link
Jelmer rrrr op 20/04/2011 16:02:33:
... waarom toch geen functies?

In dit geval gaat het om een configuratie bestand van mijn framework dat slechts eenmalig wordt uitgevoerd en vervolgens een aantal variabelen wegschrijft in een bestandje. Als die variabelen eenmaal zijn weggeschreven wordt het script niet meer aangeroepen.

In dit geval kan er qua variabelen namen niks mis gaan. Als je de functie get_defined_vars gebruikt dan kun je zien welke variabelen er zijn gedeclareerd. Ik vind het dan wel mooi als alle door mijzelf aangemaakt variabelen geunset zijn zodat ze niet tevoorschijn komen, maar of dat deze "Tic" nou ook daadwerkelijk ergens op slaat... :-?

Iemand anders nog iets aan toe te voegen?
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.