dat moet wel, aangezien je niet altijd files uit de upload_tmp_dir mag lezen (oa. als safe mode aanstaat of open_basedir ingesteld is) en je dus eerst move_uploaded_file moet aanroepenquote:Op maandag 26 maart 2012 22:14 schreef kucher het volgende:
Je hoeft het niet te verwijderen, dat doet PHP zelf al.
Goede site, tutorials zijn lekker uptodate (zoals het hoort). Dit durf ik tenminste te geven aan een beginner! Zeker een aanrader.quote:Op dinsdag 27 maart 2012 16:50 schreef Dalando het volgende:
Ik kwam deze tegen en ik dacht ik laat hem even hier achter, misschien goed voor in de OP.
http://phptuts.nl/home/
Sarcastisch?quote:Op dinsdag 27 maart 2012 18:14 schreef totalvamp het volgende:
[..]
Goede site, tutorials zijn lekker uptodate (zoals het hoort). Dit durf ik tenminste te geven aan een beginner! Zeker een aanrader.
Nee, anders zou ik wel zeggen dat de site klote is... en dat holbewoners zelfs niet gebruik maakten van globals.quote:
Ik zag tuts uit 2008 staan, dus daarom mijn twijfels.quote:Op dinsdag 27 maart 2012 18:22 schreef totalvamp het volgende:
[..]
Nee, anders zou ik wel zeggen dat de site klote is...
De laatste tutorial stamt uit eind 2009. Ik kan dat nou niet bepaald 'up-to-date' noemen...quote:Op dinsdag 27 maart 2012 18:22 schreef totalvamp het volgende:
[..]
Nee, anders zou ik wel zeggen dat de site klote is...
Als je kijkt zie je dat de techniek die gebruikt wordt gewoon goed is. Ik had eerst ook mijn twijfels erover, maar zeker voor een beginner is dit een betere start dan een PHP for Dummies boek.quote:Op dinsdag 27 maart 2012 18:23 schreef The_Terminator het volgende:
[..]
De laaste tutorial stamt uit eind 2009. Ik kan dat nou niet bepaald 'up-to-date' noemen...
Momenteel is PHP6 nog niet wijdverbreid.quote:Op dinsdag 27 maart 2012 18:23 schreef Pino112 het volgende:
[..]
Ik zag tuts uit 2008 staan, dus daarom mijn twijfels.
Dat wel, maar om dat een beginner te gaan lerenquote:Op dinsdag 27 maart 2012 21:32 schreef kucher het volgende:
PHP6 is dood, maar het verschil tussen 5.2 en 5.4 is wel groot.
namespaces is iets van PHP 5.3. Als je iets typisch PHP 5.4 als vorobeeld wilt geven, kun je bijvoorbeeld traits nemen. Maar om dat nou bij een beginner uit te leggen, lijkt me niet slim...quote:Op dinsdag 27 maart 2012 22:49 schreef totalvamp het volgende:
[..]
Dat wel, maar om dat een beginner te gaan lerenalhoewel misschien is namespacing wel een goede start
Ik zie het nut van namespaces bij PHP niet helemaal in. Je moet de bestanden toch includen dus die tijd ben je al kwijt. Als PHP goed omgaat met niet geheel inlezen van de bestanden totdat de namespace wordt aangeroepen, dan heeft het wel een voordeel aangezien hij dan pas gaat inlezen wat hij nodig heeft.quote:Op dinsdag 27 maart 2012 22:49 schreef totalvamp het volgende:
[..]
Dat wel, maar om dat een beginner te gaan lerenalhoewel misschien is namespacing wel een goede start
Het nut is dat je nooit meer 2 dezelfde classes kan aanroepen. Aangezien er meerdere classes kunnen bestaan met dezelfde naamgeving is dat dus handig. Ook hoeft includen dus niet meer. voor mijn huidige applicatie is dit perfect!quote:Op woensdag 28 maart 2012 09:16 schreef Pakspul het volgende:
[..]
Ik zie het nut van namespaces bij PHP niet helemaal in. Je moet de bestanden toch includen dus die tijd ben je al kwijt. Als PHP goed omgaat met niet geheel inlezen van de bestanden totdat de namespace wordt aangeroepen, dan heeft het wel een voordeel aangezien hij dan pas gaat inlezen wat hij nodig heeft.
Enige wat ik trouwens van PHP zag dat nog een verbetering was is het gebruik van woord "static" n functies. Dat hij het afdwingt deze functies beter te gebruiken. Liever had ik punten gezien als:
• betere type casting $var1 = string en blijft een string, niet dat het halvewege de code ineens een integer kan worden.
• Return types in functie name, zodat je precies weet wat je terug krijgt.
• Verplicht parameter types opgeven
• Functie overloading
Hoe weet PHP dan waar de classes staan als includen niet meer hoeft?quote:Op woensdag 28 maart 2012 16:11 schreef totalvamp het volgende:
[..]
Het nut is dat je nooit meer 2 dezelfde classes kan aanroepen. Aangezien er meerdere classes kunnen bestaan met dezelfde naamgeving is dat dus handig. Ook hoeft includen dus niet meer. voor mijn huidige applicatie is dit perfect!
Weet ik, maar waar ik op doel is dat het volgende mogelijk is zonder foutmeldingquote:static methods bestaat al een tijdje hoor
| 1 2 3 4 5 6 7 8 9 10 11 | <?php class Foo { public function Bar() { echo "Foo::Bar!!!"; } } Foo::Bar(); ?> |
quote:Ik ben het wel eens met je dat method parameter types aangegeven moeten kunnen worden in een interface/abstract class.
Dit kan in PHP niet:quote:overloading bestaat al
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?php class Foo { public function Bar(PrimaryClass $var) { // do something } public function Bar(SecondaryClass $var) { // do something } public function Bar(TertiaryClass $var) { // do something } } ?> |
Commentaar dwingt het niet af en dat zou wel ideaal zijn. Ook voor het opvoeden van de programmeur die wordt dan gedwongen om goed om te gaan met types.quote:waarom zou je return types in de functienaam willen? Je hoort gewoon iets terug te geven en dat zet je in een comment boven de functie.
Ik maak zelf gebruik van een autoloader (zoals je normaal ook zou hebben).quote:Op woensdag 28 maart 2012 19:37 schreef Pakspul het volgende:
Hoe weet PHP dan waar de classes staan als includen niet meer hoeft?
Dat is toch logisch? het voordeel van static is dat er geen instance gemaakt hoeft te worden van de class. Dit is gewoon zoals het hoort imo.quote:Weet ik, maar waar ik op doel is dat het volgende mogelijk is zonder foutmelding
[ code verwijderd ]
Dit mag niet, static moet er bij anders klopt het gewoon niet.
overloading houdt iets anders is.quote:Dit kan in PHP niet:
[ code verwijderd ]
Wat wel heel handig is.
Ik neem dan aan dat je zoiets zou willen:quote:Commentaar dwingt het niet af en dat zou wel ideaal zijn. Ook voor het opvoeden van de programmeur die wordt dan gedwongen om goed om te gaan met types.
| 1 2 3 4 5 | <?php function foo(int $int, @return string) { return 'het getal is: '.$int; } |
Dan worden de bestanden toch nog gewoon geinclude? Maar goed, dubbel class namen kan handig zijn.quote:Op woensdag 28 maart 2012 20:03 schreef totalvamp het volgende:
[..]
Ik maak zelf gebruik van een autoloader (zoals je normaal ook zou hebben).
Nee, want je static functie kan anders zijn dan je normale funtie. In je normale functie kun je gebruik maken van je $this variabel.quote:[..]
Dat is toch logisch? het voordeel van static is dat er geen instance gemaakt hoeft te worden van de class. Dit is gewoon zoals het hoort imo.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <?php class String { public $Value; public function __construct($val) { $this->Value = $var; } public function ConCat(String $var) { return new String($this->Value . $var->Value); } public static function ConCat(String $v1, String $v2) { return new String($v1->Value . $v2->Value); } } $query = new String('SELECT '); $query = $query->ConCat(new String('FROM '); $query2 = String::ConCat(new String('SELECT '), new String('FROM ')); ?> |
Duidelijk dat PHP en OO wereld twee andere dingen bedoelen. Ik doel op hoe het in OO wereld hoort: http://en.wikipedia.org/wiki/Function_overloadingquote:
Liever op de c# manierquote:[..]
Ik neem dan aan dat je zoiets zou willen:
[ code verwijderd ]
dat zou inderdaad wel van pas komen.
| 1 | public int Drive(int miles, int speed) { return 0; } |
Ja maar het aanroepen van de class gaat dus andersquote:Op woensdag 28 maart 2012 20:13 schreef Pakspul het volgende:
[..]
Dan worden de bestanden toch nog gewoon geinclude? Maar goed, dubbel class namen kan handig zijn.
Je kunt in static functies gebruik maken van self::quote:Nee, want je static functie kan anders zijn dan je normale funtie. In je normale functie kun je gebruik maken van je $this variabel.
[ code verwijderd ]
Zo programmeer je static functies (niet kijken naar de classes, kon even niets beters verzinnen), maar je niet zomaar een static functie als een normale functie gebruiken. Dan komt het overloaden verhaal weer om de hoek kijken.
Hmm interessant, ik kan begrijpen waarom je dat zou willen ja. Nu ik erover nadenk... waarom ik dat wel zou willenquote:Duidelijk dat PHP en OO wereld twee andere dingen bedoelen. Ik doel op hoe het in OO wereld hoort: http://en.wikipedia.org/wiki/Function_overloading
Ik zou het dan liever zo zien, ik vind het wel fijn als er ook echt function bij staatquote:Liever op de c# manier
[ code verwijderd ]
| 1 | public function int Drive() |
| 1 2 3 4 5 6 7 8 9 10 | <?php namespace Traffic\System\Core; function Autoloader($className) { //echo 'The following class was loaded:'. $className. '<br />'; $className = str_replace('\\', DIRECTORY_SEPARATOR, $className) . '.php'; require $className; } ?> |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php require 'Traffic/System/Core/Autoloader.php'; spl_autoload_register('\\Traffic\\System\\Core\\Autoloader'); define('DIRSEP', DIRECTORY_SEPARATOR); // database test $db = new Traffic\System\Core\Database(); $view = new Traffic\Views; // New grid $grid = new Traffic\Grid(); $grid->addRoad(new Traffic\Roads\Sides\Topside, $coords = array(5,4)); $grid->addRoad(new Traffic\Roads\Sides\BottomSide, $coords = array(5,5)); // etc ?> |
Weet ik, maar dat zijn wel twee verschillende dingen en die gebruik je niet door elkaar heen. Als je statische functies gebruikt mag $this niet voorkomen en dat is in PHP nu wel mogelijk.quote:Op woensdag 28 maart 2012 20:21 schreef totalvamp het volgende:
[..]
Ja maar het aanroepen van de class gaat dus andersOp namespace en niet op naam en die kijkt in een folder etc.
[..]
Je kunt in static functies gebruik maken van self::
Extra type werkquote:[..]
Hmm interessant, ik kan begrijpen waarom je dat zou willen ja. Nu ik erover nadenk... waarom ik dat wel zou willen
[..]
Ik zou het dan liever zo zien, ik vind het wel fijn als er ook echt function bij staat
[ code verwijderd ]
Snap het idee, maar ben benieuwd of introductie van namespaces ook invloed heeft op performance.quote:Voorbeeldje van mijn autoloader:
[ code verwijderd ]
Hoe ik in bestanden iets aanroep:
[ code verwijderd ]
EDIT: de FoK! php highlight ondersteunt nog geen namespaces
Tja er kloppen wel meer dingen niet (qua logica) in PHP.quote:Op woensdag 28 maart 2012 20:26 schreef Pakspul het volgende:
[..]
Weet ik, maar dat zijn wel twee verschillende dingen en die gebruik je niet door elkaar heen. Als je statische functies gebruikt mag $this niet voorkomen en dat is in PHP nu wel mogelijk.
[..]
Extra type werkde ( ) geeft al aan dat het een functie is
[..]
Snap het idee, maar ben benieuwd of introductie van namespaces ook invloed heeft op performance.
| 1 2 3 | <?php final static public int function Foo(); ?> |
Ik zie niet zo snel het voordeel ervan in tegenover een eigen class maken.quote:Op woensdag 28 maart 2012 20:36 schreef Pakspul het volgende:
En als we dan toch nog even bezig zijn fields mogen ook toegevoegd worden.
http://msdn.microsoft.com/en-us/library/ms173118.aspx
Fokking ideaal!
Ik vind die code lelijk, maar dat komt vooral omdat functienamen en propertyname met een hoofdletter beginnen. Da's wel gebruikelijk voor class names, niet voor andere dingen. En die static functie heb je niet nodig als je dit kunt doen:quote:Op woensdag 28 maart 2012 20:13 schreef Pakspul het volgende:
[..]
Dan worden de bestanden toch nog gewoon geinclude? Maar goed, dubbel class namen kan handig zijn.
[..]
Nee, want je static functie kan anders zijn dan je normale funtie. In je normale functie kun je gebruik maken van je $this variabel.
[ code verwijderd ]
Zo programmeer je static functies (niet kijken naar de classes, kon even niets beters verzinnen), maar je niet zomaar een static functie als een normale functie gebruiken. Dan komt het overloaden verhaal weer om de hoek kijken.
| 1 2 3 | <?php $query = new String('SELECT ')->concat(new String ('FROM ')) ?> |
In PHP kun je een functie maken die optionele parameters heeft. Dat is vergelijkbaar met je overloading voorbeeld.quote:Duidelijk dat PHP en OO wereld twee andere dingen bedoelen. Ik doel op hoe het in OO wereld hoort: http://en.wikipedia.org/wiki/Function_overloading
Ik vraag me af of er dynamically typed talen zijn waar dat in werkt.quote:Liever op de c# manier
[ code verwijderd ]
Je kunt checks uitvoeren op je class variabelen. Of readonly variabelen maken.quote:Op woensdag 28 maart 2012 20:40 schreef totalvamp het volgende:
[..]
Ik zie niet zo snel het voordeel ervan in tegenover een eigen class maken.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | class { protected DateTime _Birthday; public DateTime BirthDay { set { if ( value > DateTime.Now ) { // geboortedatum ligt in de toekomst dat kan niet throw new ArgumentOutOfRangeException(); } this._Birthday = value; } get { return this.Birthday; } } public int Age { get { TimeSpan diff = DateTime.Now - this._Bithday; return (int) Math.Floor(diff.Days / 365.25); } } } |
Dat is gewoon een hele andere programmeer style ineensquote:Op woensdag 28 maart 2012 21:00 schreef Pakspul het volgende:
[..]
Je kunt checks uitvoeren op je class variabelen. Of readonly variabelen maken.
[ code verwijderd ]
Uppercamelcase is lowercamelcase mag je gebruiken zoals je wil, als je maar consistent bent in het gebruik.quote:Op woensdag 28 maart 2012 21:00 schreef Light het volgende:
[..]
Ik vind die code lelijk, maar dat komt vooral omdat functienamen en propertyname met een hoofdletter beginnen. Da's wel gebruikelijk voor class names, niet voor andere dingen. En die static functie heb je niet nodig als je dit kunt doen:
[ code verwijderd ]
Het is weer zo'n afgeraffelde oplossing.quote:[..]
In PHP kun je een functie maken die optionele parameters heeft. Dat is vergelijkbaar met je overloading voorbeeld.
Dit maakt PHP ook een makkelijke taal, maar officieel moet het gewoon anders en dat zou wel mooi zijn als ze dat eens ingaan voeren. Want ze zijn al bezig om een volwassen taal te worden.quote:[..]
Ik vraag me af of er dynamically typed talen zijn waar dat in werkt.
Voorbeeld is geschreven in c#, maar dat werkt wel super goed. Readonly variabelen ook, soms kan dat best handig uitkomen.quote:Op woensdag 28 maart 2012 21:02 schreef totalvamp het volgende:
[..]
Dat is gewoon een hele andere programmeer style ineens
Komt vast ooit wel in PHP terecht.
Moet? mag PHP nog een eigen taal zijn, of moet het allemaal een pot nat zijn en allemaal hetzelfde?quote:Op woensdag 28 maart 2012 21:04 schreef Pakspul het volgende:
Dit maakt PHP ook een makkelijke taal, maar officieel moet het gewoon anders en dat zou wel mooi zijn als ze dat eens ingaan voeren.
Dat kan in PHP ook:quote:Op woensdag 28 maart 2012 21:00 schreef Pakspul het volgende:
[..]
Je kunt checks uitvoeren op je class variabelen. Of readonly variabelen maken.
[ code verwijderd ]
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <?php class Foo { private $birthDate; public function getBirthDate() { return $this->birthDate; } public function setBirthDate(DateTime $date) { if($date > new DateTime() { throw new InvalidArgumentException('Datum mag niet in de toekomst liggen'); } $this->birthDate = $date; } public function getAge() { $diff = $this->birthDate->diff(new DateTime()); $age = $diff->y; return $age; } } ?> |
Nou ja moet, zou leuk zijn als ze de standaarden volgen.quote:Op woensdag 28 maart 2012 21:09 schreef Sitethief het volgende:
[..]
Moet? mag PHP nog een eigen taal zijn, of moet het allemaal een pot nat zijn en allemaal hetzelfde?
Weet ik, maar die get/set functies in vind ik dan weer niet mooiquote:Op woensdag 28 maart 2012 21:10 schreef Light het volgende:
[..]
Dat kan in PHP ook:
[ code verwijderd ]
Dat is het belangrijkste.quote:Op woensdag 28 maart 2012 21:04 schreef Pakspul het volgende:
[..]
Uppercamelcase is lowercamelcase mag je gebruiken zoals je wil, als je maar consistent bent in het gebruik.
Sinds PHP 5.4 kan het wel, iig als je twee haakjes toevoegt (en misschien ook zonder die extra haakjes):quote:Het was ook een voorbeeld en wat jij doet kan niet aangezien. PHP geeft dan een error.
| 1 2 3 | <?php $query = (new String('SELECT '))->concat(new String ('FROM ')) ?> |
Nee, het is een valide manier van werken, helemaal in de tijd dat typehinten in PHP nog niet mogelijk was.quote:[..]
Het is weer zo'n afgeraffelde oplossing.
PHP is dynamically typed, en dat heeft voor- en nadelen. Jouw idee over hoe dingen moeten, zijn niet altijd mogelijk. En als je een statically typed taal wilt, moet je geen PHP gebruiken.quote:[..]
Dit maakt PHP ook een makkelijke taal, maar officieel moet het gewoon anders en dat zou wel mooi zijn als ze dat eens ingaan voeren. Want ze zijn al bezig om een volwassen taal te worden.
Nadeel is dat de mensen dan heel veel code opnieuw moeten gaan schrijven.
Dan kun je nog altijd de magic funnctions __get en __set gebruiken.quote:Op woensdag 28 maart 2012 21:15 schreef Pakspul het volgende:
Weet ik, maar die get/set functies in vind ik dan weer niet mooic# en PHP lijken best voor op elkaar, maar als het op er aan komt dan kies ik toch voor c# en dan kijk ik niet naar mogelijkheden, maar puur naar opmaak.
en _call en _callStaticquote:Op woensdag 28 maart 2012 21:28 schreef Light het volgende:
[..]
Dan kun je nog altijd de magic funnctions __get en __set gebruiken.
Bij de fields in C# bouw je ook methods. Je geeft ze alleen niet zo expliciet een naam.quote:Op woensdag 28 maart 2012 21:36 schreef Pakspul het volgende:
[..]
en _call en _callStatic
Opties zat, maar heb geen zin om methodes te bouwen om functionaliteiten na te bootsen.
thanks..iemand al ooit iets mee gedaan?quote:Op vrijdag 30 maart 2012 14:23 schreef KomtTijd... het volgende:
http://php.net/manual/en/function.exif-read-data.php
sommige fototoestellen nemen idd een rotatie op in de exif data.
even inloggen en dan kun je in de settings maintenance mode uit zetten als het goed is.quote:Op vrijdag 30 maart 2012 21:30 schreef Blue_Panther_Ninja het volgende:
O jah, nieuwe Joomla database gemaakt!!![]()
hoe kan ik dit weghalen??
[ link | afbeelding ]
Even proberen!!quote:Op vrijdag 30 maart 2012 23:10 schreef stefanhaan het volgende:
[..]
even inloggen en dan kun je in de settings maintenance mode uit zetten als het goed is.
Tevens leuke hentai tab heb je open
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 | <?php /** * @package Joomla.Site * @copyright Copyright (C) 2005 - 2012 Open Source Matters, Inc. All rights reserved. * @license GNU General Public License version 2 or later; see LICENSE.txt */ // Set flag that this is a parent file. define('_JEXEC', 1); define('DS', DIRECTORY_SEPARATOR); if (file_exists(dirname(__FILE__) . '/defines.php')) { include_once dirname(__FILE__) . '/defines.php'; } if (!defined('_JDEFINES')) { define('JPATH_BASE', dirname(__FILE__)); require_once JPATH_BASE.'/includes/defines.php'; } require_once JPATH_BASE.'/includes/framework.php'; // Mark afterLoad in the profiler. JDEBUG ? $_PROFILER->mark('afterLoad') : null; // Instantiate the application. $app = JFactory::getApplication('site'); // Initialise the application. $app->initialise(); // Mark afterIntialise in the profiler. JDEBUG ? $_PROFILER->mark('afterInitialise') : null; // Route the application. $app->route(); // Mark afterRoute in the profiler. JDEBUG ? $_PROFILER->mark('afterRoute') : null; // Dispatch the application. $app->dispatch(); // Mark afterDispatch in the profiler. JDEBUG ? $_PROFILER->mark('afterDispatch') : null; // Render the application. $app->render(); // Mark afterRender in the profiler. JDEBUG ? $_PROFILER->mark('afterRender') : null; // Return the response. echo $app; |
dat kun je niet vanuit de indexquote:Op zaterdag 31 maart 2012 00:16 schreef Blue_Panther_Ninja het volgende:
index.php
[ code verwijderd ]
Welke moet ik weg hebben voor de site login in gedoe als het offline is?
Zie post 141.quote:Op zaterdag 31 maart 2012 00:21 schreef stefanhaan het volgende:
[..]
dat kun je niet vanuit de indexbeschrijf even specifiek wat je wil
Ja maar wil je alleen het inloggen weghalen of de hele under construction?quote:
alleen inloggen.quote:Op zaterdag 31 maart 2012 01:24 schreef stefanhaan het volgende:
[..]
Ja maar wil je alleen het inloggen weghalen of de hele under construction?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | SELECT TOP 1 t.IETS1, t.IETS2 FROM TABEL1 AS t WHERE t.ID='2' SELECT TOP 1 q.IETS3 FROM TABEL2 AS q WHERE q.ID='2' SELECT TOP 1 s.IETS4 s.IETS5 s.IETS6 FROM TABEL3 AS s WHERE s.ID='2' |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | SELECT TOP 1 t.IETS1, t.IETS2, q.IETS3, s.IETS4, s.IETS5, s.IETS6 FROM TABEL1 AS t TABEL2 AS q TABEL3 AS s WHERE t.ID='2' AND q.ID='2' AND s.ID='2' |
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |