pad ophalen in OOP
Pagina: « vorige 1 2 3 volgende »
Als ik zo je topics lees ben jij volgens mij een veel te angstige developer die bij elke teken die hij erin plaatst zich eerst 100x afvraagt of het niet sneller kan. Doe dat niet, script gewoon op jou manier. Die snelheidsverschillen zul je echt niet merken.
@Pim, toch nog één vraagje. Is het niet een stuk sneller als je de pathRepository als een shared service declareerd? Of wil je per path eerst weer de ini file parsen, een foreach uitvoeren en die toevoegen aan een klasse?
Ik ben het voor een groot gedeelte met je eens, maar altijd je eigen gang gaan is niet helemaal correct. Door veel dingen te lezen, en code van andere mensen te bekijken leer je veel dingen.
Zeker als je bezig bent met High Traffic websites is het toch wel belangrijk om een goed op snelheid te letten.
Denk ook maar aan de welbekende term: 'Query optimalisatie'. Als je nog nooit wat daarover gelezen hebt, kan je het moeilijk toepassen niet waar?
Daarnaast nog een kleine tip. Probeer eens certificaten te halen. In bijvoorbeeld het Zend examen komen veel dingen aanbod die je in de praktijk weinig gebruikt. Maar omdat je ze voor het Zend examen wel moet leren krijg je wel een goed beeld hoe PHP werkt, en hoe je de functies goed kunt gebruiken. Lees dus bijvoorbeeld de PDF's van Zend om meer te leren omtrent (basis) PHP.
Daarnaast, is het ook leuk om eens te kijken naar de Oracle examens. Kan je ook veel van leren, en staat ook nog eens leuk op je CV.
Offtopic:
Misschien is query optimalisatie een goed idee voor een nieuwe tutorial?
Gewijzigd op 24/04/2012 18:43:00 door Niels K
@ozzie
Kijk eens naar het topic 'php source' dat ik ooit hier heb gepost. Daar wordt alles hel netjes uitgelegd.
Toevoeging op 24/04/2012 19:12:50:
@wouter, ja natuurlijk, maar ik had het over het algemene verhaal.
@ozzie
Kijk eens naar het topic 'php source' dat ik ooit hier heb gepost. Daar wordt alles heel netjes uitgelegd.
Offtopic: Niels... aangezien jij er veel van weet... misschien een apart item "Hoe werkt PHP" in de koffiehoek?
Tja, wat is veel weten? Ik weet net als Wouter en Pim gewoon de basis werking van PHP.
Zodra je de basis echt goed kent, moet je pas gaan kijken naar Design Patterns enzo ;-)
Maar goed, dat is mijn mening.
Niels
Ik ken ook wel wat basis... maar die technische dingetjes... daar weet ik niet alles vanaf... misschien is dat dus wel leuk voor een koffiehoek item "PHP onder de motorkap". Lijkt me echt iets voor jou om dat te initiëren Niels :) Met wat linkjes naar interessante artikelen, pdfjes enz.
Dat ziet er uit als een mooi artikel... ga ik vanavond even op m'n gemak lezen. Maar wat verdieping zou ik wel leuk vinden, bijv. hoe werkt een object of array (onderwater), hoe worden variabelen gedeclareerd... zeg maar.. wat gebeurt er "onderwater".
Weet ik, maar ik had geen tijd meer om verder te schrijven ;-)
Maar ik ben nu al benieuwd naar het vervolg!
Oke ;-) Ik ben benieuwd wat de rest er van vind. Misschien moet ik er wel een tut van maken?
Van mij mag ie in de koffiehoek blijven... kun je 'm af en toe mooi aanvullen als je iets nieuws tegenkomt :)
dat kan niels sowieso, ozzie
Ik heb niet voor niets zo'n mooi titeltje boven mijn naam staan he :-) Maar goed, ik zal eerst wat artikelen schrijven, de meningen aanhoren en het daarna als tutorial aanbieden.
Niels Kieviet op 25/04/2012 16:13:05:
Ik heb niet voor niets zo'n mooi titeltje boven mijn naam staan he :-)
Nee hoor, die staat onder je naam ;)
Straks eens lezen; klinkt wel interessant.
$services = new Services();
$services->set('pathRepository.config', function($services) {
return parse_ini($services->get('pathRepository.config.file'));
});
echo 'bla';
Nu gaat het om dit stukje: function($services)
Als ik $services weglaat, dus function(), dan wordt het woord "bla" wel ge-echoot maar zodra ik iets tussen de haajes zet, bijv. function('aaaa'), dan doet ie het niet.
Iemand toevallig een idee waar dat aan kan liggen? (Ik heb het allemaal heel snel en summier even getest, maar misschien ziet iemand toevallig waar het aan ligt).
En kun je misschien code tags gebruiken, maakt het altijd wat leesbaarder.
Waarom je $services als parameter meegeeft is omdat je $services ook in de functie zelf wilt gebruiken, je moet hem dus in de function scope trekken. Dat kan ook zo, niet getests even uit mijn hoofd:
Code (php)
1
2
3
4
5
2
3
4
5
<?php
$container->set('pathRepository.config', function() use ($container) {
return parse_ini_file($container->get('pathRepository.config.file'));
});
?>
$container->set('pathRepository.config', function() use ($container) {
return parse_ini_file($container->get('pathRepository.config.file'));
});
?>
Tevens is er nog veel mis met je code:
- parse_ini bestaat niet, wel parse_ini_string of parse_ini_file (waarbij je hier het laatste wilt)
- je hebt nergens pathRepository.config.file gedefinieerd. (je weet hopelijk wel waarom dat moet en hoe je dit in DI moet doen?)
In principe heeft die echo niks te maken met de code ervoor.
Weet je eventueel nog een andere naam dan container? Ik vind container zo globaal. Dat kan van alles zijn. Vandaar dat ik services had gekozen. Weet jij nog iets beters?
Maar zelf maak ik gebruik van Pimple (een dependency injection container van Fabian Potencier, maker van Symfony). Dat werkt prima, geweldige ArrayAccess support en alles wat je je kunt wensen, zeker de moeite van het kijken waard!