Assumption is the mother of all fuckups. Juist dat 'in principe' is waarom je een exception gooit.quote:Op zaterdag 11 januari 2014 19:21 schreef n8n het volgende:
[..]
in principe kan het toch niet voorkomen, sowieso is elk email adres in de tabel uniek.
duidelijk, als ik eigenwijs klink is dat omdat ik het nog onduidelijk heb. Schrijf je die exception dan in de functie if als else statement na de if?quote:Op zaterdag 11 januari 2014 19:43 schreef xzaz het volgende:
[..]
Assumption is the mother of all fuckups. Juist dat 'in principe' is waarom je een exception gooit.
nee probeer eerst standaard php te leren. Over een week stage, daar werken ze met lavarel oid. Vandaag proberen homebrew aan te praat te krijgen ipv mamp en heb volgens mij m'n apache config file verneuktquote:Op zondag 12 januari 2014 16:41 schreef KomtTijd... het volgende:
Iedere class in een file is vrij gebruikelijk, zelf includen niet. Gebruik je een framework? Meeste frameworks hebben dat geautoriseerd.
Nice, over sql gesproken, deze kerel is echt een baas: http://code.openark.org/blog/mysql/sql-pie-chartquote:Op maandag 13 januari 2014 10:33 schreef Aether het volgende:
Vond dit wel een aardige verzameling, misschien heeft iemand er nog iets aan:
Artful Common MySQL Queries.
Wat een monsterqueryquote:Op maandag 13 januari 2014 10:44 schreef raptorix het volgende:
[..]
Nice, over sql gesproken, deze kerel is echt een baas: http://code.openark.org/blog/mysql/sql-pie-chart
Ik heb keer een stored procedure van iets van 600 regels geschrevenquote:
599 Regels commentaar?quote:Op maandag 13 januari 2014 13:13 schreef raptorix het volgende:
[..]
Ik heb keer een stored procedure van iets van 600 regels geschreven
Was iets met een grote huizensite zeg maar
Nee was de searchquery maar daarin ook nog eens het hele paging en parameter mechanisme, pfffff hoofdpijn van dat ding.quote:
https://github.com/Shandem/Examine ?quote:Op maandag 13 januari 2014 13:17 schreef raptorix het volgende:
[..]
Nee was de searchquery maar daarin ook nog eens het hele paging en parameter mechanisme, pfffff hoofdpijn van dat ding.
We spreken hier over 2001, toen waren dat soort technieken nog niet zo gebruikelijk, wat we wel deden was de database readonly maken, dat scheelt ongeveer 40 procent. Tegenwoordig gebruik je voor dit soort zaken gewoon een noSql server of anders wel een ORM mapper.quote:
Ah, dat plaatst het wat in de context, als je een sp van 600 regels maakt moet er toch een lampje gaan branden. The horror!quote:Op maandag 13 januari 2014 13:20 schreef raptorix het volgende:
[..]
We spreken hier over 2001, toen waren dat soort technieken nog niet zo gebruikelijk, wat we wel deden was de database readonly maken, dat scheelt ongeveer 40 procent. Tegenwoordig gebruik je voor dit soort zaken gewoon een noSql server of anders wel een ORM mapper.
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 | <?php // fictieve $_POST array $post = array('email' => 'hoi', 'password' => 'test'); function get_variables($data) { $key = 0; do { $keys = array_keys($data); $var = (array_keys($data)[$key]); global $$var; if (!empty($data[$var])) { $$var = $data[$var]; } else { $$var = null; } $key++; } while (array_key_exists($key, $keys)); } // hier wil ik $_POST gaan gebruiken get_variables($post); // variabelen komen uit de functie echo "$email<br>$password"; ?> |
Global vind ik zelf niet zo netjes. Ik zou het via een class (service) doen.quote:Op maandag 13 januari 2014 18:59 schreef n8n het volgende:
Ben ik weer. Om in een functie specifieke $_POST input te krijgen moest ik of telkens voluit $_POST['name'] schrijven, er een variabele van maken of variabelen global aanroepen. Heb nu een functie die je overal kan aanroepen die de $_POST data omzet in losse variabelen die je lokaal kan gebruiken.
[ code verwijderd ]
het maakt van elke key in een array een variable met de naam en waarde van de key. dus $_POST[email] wordt omgezet naar $email = 'waarde van email'. Als een waarde leeg is heeft de variabele een null waarde.
Op of aanmerkingen? Kom net kijken dus heb vaak het idee dat ik met ideeën kom
global is toch nodig om de variabele überhaupt te kunnen definiëren buiten de scope van de function (of class)?quote:Op maandag 13 januari 2014 19:01 schreef bondage het volgende:
[..]
Global vind ik zelf niet zo netjes. Ik zou het via een class (service) doen.
Bij een class heb je global niet nodig. Als je het object eenmaal hebt aangemaakt kun je dat meegeven aan je functies. Ook kun je op jouw manier variabelen per ongeluk overschrijven als je dezelfde namen ergens anders gebruikt.quote:Op maandag 13 januari 2014 19:02 schreef n8n het volgende:
[..]
global is toch nodig om de variabele überhaupt te kunnen definiëren buiten de scope van de function (of class)?
dus variabelen die je binnen je class (maar buiten een functie aanmaakt) kan je binnen die class in elke functie gebruiken? Ga dat even proberen. Zou wel mooi zijn met het oog op overschrijven van bestaande waarden.quote:Op maandag 13 januari 2014 19:05 schreef bondage het volgende:
[..]
Bij een class heb je global niet nodig. Als je het object eenmaal hebt aangemaakt kun je dat meegeven aan je functies. Ook kun je op jouw manier variabelen per ongeluk overschrijven als je dezelfde namen ergens anders gebruikt.
Dit is niet echt een goede oplossing. Veel te onveilig, je kunt zelf post variabelen toevoegen en die worden dan als variabele gebruikt. Dit is een paar jaar geleden een grote overstap geweest voor mensen. register_globals stond vaak aan en gaf superveel beveiligingslekken. Je hebt nu een zelfde soort functie geschreven.quote:Op maandag 13 januari 2014 18:59 schreef n8n het volgende:
Ben ik weer. Om in een functie specifieke $_POST input te krijgen moest ik of telkens voluit $_POST['name'] schrijven, er een variabele van maken of variabelen global aanroepen. Heb nu een functie die je overal kan aanroepen die de $_POST data omzet in losse variabelen die je lokaal kan gebruiken.
[ code verwijderd ]
het maakt van elke key in een array een variable met de naam en waarde van de key. dus $_POST[email] wordt omgezet naar $email = 'waarde van email'. Als een waarde leeg is heeft de variabele een null waarde.
Op of aanmerkingen? Kom net kijken dus heb vaak het idee dat ik met ideeën kom
niet eens aan gedacht dan zou het eventueel nog met een werken als ik een prefix toevoeg zodat overschrijven van bestaande variabelen (door kwaadwillenden) geen optie meer is. Toch blij dat ik het even heb nagevraagd. global haal ik sowieso wel weg danquote:Op maandag 13 januari 2014 19:08 schreef totalvamp het volgende:
[..]
Dit is niet echt een goede oplossing. Veel te onveilig, je kunt zelf post variabelen toevoegen en die worden dan als variabele gebruikt. Dit is een paar jaar geleden een grote overstap geweest voor mensen. register_globals stond vaak aan en gaf superveel beveiligingslekken. Je hebt nu een zelfde soort functie geschreven.
Alles wat je in een class buiten de functie zet is beschikbaar binnen de functies die in die class staan.quote:Op maandag 13 januari 2014 19:08 schreef n8n het volgende:
[..]
dus variabelen die je binnen je class (maar buiten een functie aanmaakt) kan je binnen die class in elke functie gebruiken? Ga dat even proberen. Zou wel mooi zijn met het oog op overschrijven van bestaande waarden.
ah in 1 keer snap ik $this, heb ik meteen m'n prefix te pakkenquote:Op maandag 13 januari 2014 19:13 schreef bondage het volgende:
[..]
Alles wat je in een class buiten de functie zet is beschikbaar binnen de functies die in die class staan.
Voorbeeld:
private $variable_1 = 'test';
private $variable_2 = 'test2';
public function testFunctie() {
echo $this->$variable_1 . '<br /> . $this->$variable_2';
}
$this is de referentie naar de class waar je momenteel in zit (of inherit).quote:Op maandag 13 januari 2014 19:14 schreef n8n het volgende:
[..]
ah in 1 keer snap ik $this, heb ik meteen m'n prefix te pakken
Zie editquote:Op maandag 13 januari 2014 19:14 schreef n8n het volgende:
[..]
ah in 1 keer snap ik $this, heb ik meteen m'n prefix te pakken
ze maken het wel makkelijkquote:Op maandag 13 januari 2014 19:15 schreef totalvamp het volgende:
[..]
$this is de referentie naar de class waar je momenteel in zit (of inherit).
Voor statische vars is dit self::
ja precies, nu weer uitdokteren hoe ik m'n idee alsnog werkend krijg want het is niet echt DRY als ik overal globals moet definiëren.quote:Op maandag 13 januari 2014 19:15 schreef bondage het volgende:
[..]
Zie edit
$this->variable_1 (dollarteken hoort niet voor de var)
Zoiets zou je mee kunnen beginnen:quote:Op maandag 13 januari 2014 19:17 schreef n8n het volgende:
[..]
ja precies, nu weer uitdokteren hoe ik m'n idee alsnog werkend krijg want het is niet echt DRY als ik overal globals moet definiëren.
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 | <?php class cRequest { private $request_vars; public function __construct() { $this->request_vars = $_REQUEST; } public function setRequestVar($v_key, $v_val) { $this->request_vars[$v_key] = $v_val; } public function getRequestVar($key, $ret_nonexisting = '') { if(isset($this->request_vars[$key])) { return $this->request_vars[$key]; } return $ret_nonexisting; } public function getRequestArray() { return $this->request_vars; } } ?> <?php $obj_request = new cRequest(); // print de var, als deze niet bestaat dan krijg je 'ik_was_undefined' terug. echo $obj_request->getRequestVar('bla', 'ik_was_undefined'); ?> |
1 2 3 4 5 6 7 | <?php echo testFunction($obj_request); function testFunction($request_object) { return $request_object->getRequestVar('bla', 'ik_was_undefined'); } ?> |
Dit is niet de beste oplossing, je classe is een beetje ouderwets en je kunt dan beter gebruik maken van de magic get en set methoden. Dat scheelt ook gelijk in wat je moet typen.quote:Op maandag 13 januari 2014 19:28 schreef bondage het volgende:
[..]
Zoiets zou je mee kunnen beginnen:
[ code verwijderd ]
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 | <?php class cRequest { private $request_vars; public function __construct() { $this->request_vars = $_REQUEST; } public function __set($v_key, $v_val) { $this->request_vars[$v_key] = $v_val; } public function __get($key) { if(isset($this->request_vars[$key])) { return $this->request_vars[$key]; } return false; } public function getRequestArray() { return $this->request_vars; } } ?> <?php $obj_request = new cRequest(); // krijg een var of false echo $obj_request->bla; ?> |
Dat had ik in de eerste instantie maar dan kun je niet bepalen wat er moet worden teruggegeven indien de var niet voorkomt in de globale request array.quote:Op maandag 13 januari 2014 19:33 schreef totalvamp het volgende:
[..]
Dit is niet de beste oplossing, je classe is een beetje ouderwets en je kunt dan beter gebruik maken van de magic get en set methoden. Dat scheelt ook gelijk in wat je moet typen.
[ code verwijderd ]
Ik begreep inderdaad dat je iets specifieks terug wilde hebben. Dat is alleen niet de taak van deze class. Je geeft alleen iets terug en in je Template class of Controller zul je daar iets mee moeten doen.quote:Op maandag 13 januari 2014 19:44 schreef bondage het volgende:
[..]
Dat had ik in de eerste instantie maar dan kun je niet bepalen wat er moet worden teruggegeven indien de var niet voorkomt in de globale request array.
Stel dat je een form hebt en je wilt vooraf ingevulde waarden hebben als er geen input van de gebruiker is doorgegeven, via de functie getRequestVar in mijn class kun je dan via de tweede param aangeven wat deze waarde moet zijn. Op jouw manier lukt dat niet, of ik moet iets over het hoofd zien. Ook kun je de functie uitbreiden met een extra param waarin je bijvoorbeeld mee kunt geven of je de waarde om wilt zetten in htmlentities, dan hoef je die functie niet los aan te roepen in je template.
1 2 3 4 5 6 7 8 9 10 11 12 13 | <?php $t = new Template('test'); $r = new Request(); $t->replace('email', $r->email); class Template { protected $html; public function replace($key, $with) { if(false !== $with) $this->html = str_replace($key, $with, $this->html); // Hier kun je afhandelen wat je doet als het false is } } |
Ik ben het met je eens dat je dit soort zaken in de template zelf af hoort te handelen, echter vind ik het zelf wel handig dat de request class het in dit geval ook kan omdat je de waarden niet altijd in de template gebruikt maar misschien ook ergens anders. Je zou dit natuurlijk ook door die classes (bijv. een formulier verwerking class) laten afhandelen maar dat vond ik voor het voorbeeldje iets te diep op de stof ingaan.quote:Op maandag 13 januari 2014 19:50 schreef totalvamp het volgende:
[..]
Ik begreep inderdaad dat je iets specifieks terug wilde hebben. Dat is alleen niet de taak van deze class. Je geeft alleen iets terug en in je Template class of Controller zul je daar iets mee moeten doen.
Bijvoorbeeld:
[ code verwijderd ]
Ik moet er wel bij zeggen dat ik mijn formulieren opbouw met classes. Elk element is een class met zijn eigen validatie en manier om standaardwaarde te zetten.
Ja misschien inderdaad te geavanceerd voor een beginnerquote:Op maandag 13 januari 2014 20:10 schreef bondage het volgende:
[..]
Ik ben het met je eens dat je dit soort zaken in de template zelf af hoort te handelen, echter vind ik het zelf wel handig dat de request class het in dit geval ook kan omdat je de waarden niet altijd in de template gebruikt maar misschien ook ergens anders. Je zou dit natuurlijk ook door die classes (bijv. een formulier verwerking class) laten afhandelen maar dat vond ik voor het voorbeeldje iets te diep op de stof ingaan.
Ik bouw in de meeste tools/websites die ik heb geschreven de template op als een extension op een baseclass en set dan alle vars die nodig zijn in de template. Je kunt daar dan eventueel ook standaardwaarden zetten.
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 | <?php $f = new System\Core\Form(); $f->addElement(new System\Core\Form\Element\Fieldset( array( 'name' => 'testFieldset', 'label' => 'Testfieldset', 'elements' => array( new System\Core\Form\Input\Text(array( 'name' => 'test', 'label' => 'Test field', 'value' => 'testvaluess', 'validator' => array( 'Length' => array('max' => 10) ))), new System\Core\Form\Input\Text(array( 'name' => 'test', 'label' => 'Testfield', 'value' => 'testvaluess', 'validator' => array( 'Length' => array('max' => 10) ))) )) )); $f->addElement(new System\Core\Form\Element\Button( array( 'name' => 'Test', 'value' => 'Test' ) )); $f->show(); ?> |
Ik zou het zo maken dat de constructor een array accepteert, zodat je dezelfde class ook voor $_GET en $_POST kunt gebruiken. En zodat je de code makkelijker kunt testen. En classes waarvan de naam begint met een kleine letter c snap ik ook niet.quote:Op maandag 13 januari 2014 19:33 schreef totalvamp het volgende:
[..]
Dit is niet de beste oplossing, je classe is een beetje ouderwets en je kunt dan beter gebruik maken van de magic get en set methoden. Dat scheelt ook gelijk in wat je moet typen.
[ code verwijderd ]
1 2 3 4 5 6 7 8 9 10 11 | <?php class cRequest { private $request_vars; public function __construct($vars = $_REQUEST) { $this->request_vars = $vars; } // meer functies } ?> |
Wat dat betreft kun je eigenlijk ook gewoon gelijk de $_REQUEST gebruiken. Dan kun je de class als static gebruiken.quote:Op maandag 13 januari 2014 20:43 schreef Light het volgende:
[..]
Ik zou het zo maken dat de constructor een array accepteert, zodat je dezelfde class ook voor $_GET en $_POST kunt gebruiken. En zodat je de code makkelijker kunt testen. En classes waarvan de naam begint met een kleine letter c snap ik ook niet.
[ code verwijderd ]
Dat is mij zo aangeleerd tijdens een cursus OOP ergens in een ver verleden, volgens mij om ervoor te zorgen dat je niet met gereserveerde namen komt te zitten. Je zou er eventueel ook iets anders voor kunnen zetten natuurlijk.quote:Op maandag 13 januari 2014 20:43 schreef Light het volgende:
[..]
En classes waarvan de naam begint met een kleine letter c snap ik ook niet.
Tegenwoordig heeft PHP namespaces om dat soort conflicten te voorkomen.quote:Op maandag 13 januari 2014 21:32 schreef bondage het volgende:
[..]
Dat is mij zo aangeleerd tijdens een cursus OOP ergens in een ver verleden, volgens mij om ervoor te zorgen dat je niet met gereserveerde namen komt te zitten. Je zou er eventueel ook iets anders voor kunnen zetten natuurlijk.
Je UI past goed bij deze post Namespaces moet ik me toch maar eens in gaan verdiepen, werkelijk nog nooit gebruiktquote:Op maandag 13 januari 2014 21:34 schreef Light het volgende:
[..]
Tegenwoordig heeft PHP namespaces om dat soort conflicten te voorkomen.
Wat is trouwens je redenatie daarachter? Ik had juist voor $_REQUEST gekozen omdat deze zowel de GET als POST waarden bevat. Ik doe het eigenlijk altijd zo en ben nog nooit tegen problemen aangelopen.quote:Op maandag 13 januari 2014 20:43 schreef Light het volgende:
[..]
Ik zou het zo maken dat de constructor een array accepteert, zodat je dezelfde class ook voor $_GET en $_POST kunt gebruiken.
Dat is (een variant op) de Hungarian notation en stamt uit de tijd dat data types niet snel herkend konden worden in de code. In php vind ik dergelijke type hints (want dat zijn het) overbodig, want 1) php is weak typed en 2) een goede IDE geeft ook hints. Je ziet ook dat deze notatie niet (meer) gebruikt wordt in de bekende frameworks en projecten zoals ZF, Symfony, Doctrine, Laravel en vele anderen.quote:Op maandag 13 januari 2014 21:32 schreef bondage het volgende:
[..]
Dat is mij zo aangeleerd tijdens een cursus OOP ergens in een ver verleden, volgens mij om ervoor te zorgen dat je niet met gereserveerde namen komt te zitten. Je zou er eventueel ook iets anders voor kunnen zetten natuurlijk.
Ik ben al wat sites aan het doornemen over namespaces; lijkt niet heel ingewikkeld als ik het zo zie. Binnenkort zelf maar even wat mee gaan experimenteren. Je leert immers het snelst door het gewoon te doenquote:Op maandag 13 januari 2014 22:21 schreef zoem het volgende:
[..]
Dat is (een variant op) de Hungarian notation en stamt uit de tijd dat data types niet snel herkend konden worden in de code. In php vind ik dergelijke type hints (want dat zijn het) overbodig, want 1) php is weak typed en 2) een goede IDE geeft ook hints. Je ziet ook dat deze notatie niet (meer) gebruikt wordt in de bekende frameworks en projecten zoals ZF, Symfony, Doctrine, Laravel en vele anderen.
Zoals Light al aangeeft heb je nu namespaces. Moderne frameworks maken daar al dankbaar gebruik van. Hiervoor zag je veelvuldig de underscore-notatie (bijv Zend_View_Helper_Abstract) om conflicten te voorkomen. In beide constructies wordt de projectnaam als primaire prefix/namespace gebruikt.
Nadeel is dat $_REQUEST de data uit $_GET, $_POST en $_COOKIE combineert. Dat creëert 2 potentiele problemen:quote:Op maandag 13 januari 2014 21:56 schreef bondage het volgende:
[..]
Wat is trouwens je redenatie daarachter? Ik had juist voor $_REQUEST gekozen omdat deze zowel de GET als POST waarden bevat. Ik doe het eigenlijk altijd zo en ben nog nooit tegen problemen aangelopen.
Zeker, gewoon ermee aan de slag gaan werkt het bestequote:Op maandag 13 januari 2014 22:26 schreef bondage het volgende:
[..]
Ik ben al wat sites aan het doornemen over namespaces; lijkt niet heel ingewikkeld als ik het zo zie. Binnenkort zelf maar even wat mee gaan experimenteren. Je leert immers het snelst door het gewoon te doen
Ai, dat is best wel naatje. Het zal waarschijnlijk niet zo snel voorkomen omdat ik erg goed let op de naamgeving van mijn cookie, post en get vars door er iets voor te zetten maar je weet echter maar nooit... Binnenkort maar ff mijn request classes gaan verbouwenquote:Op maandag 13 januari 2014 22:35 schreef zoem het volgende:
[..]
Nadeel is dat $_REQUEST de data uit $_GET, $_POST en $_COOKIE combineert. Dat creëert 2 potentiele problemen:
1) De data van $_COOKIE, $_POST en $_GET overschrijven elkaar als er dezelfde keys bestaan, wat kan leiden tot onverwacht gedrag. De standaarvolgorde is G, P en dan C.
2) Omdat $_COOKIE voorrang heeft op $_GET en $_POST, kan er mogelijk cookiedata op onveilige plekken terechtkomen.
Dit is mijnequote:Op maandag 13 januari 2014 22:49 schreef bondage het volgende:
[..]
Ai, dat is best wel naatje. Het zal waarschijnlijk niet zo snel voorkomen omdat ik erg goed let op de naamgeving van mijn cookie, post en get vars door er iets voor te zetten maar je weet echter maar nooit... Binnenkort maar ff mijn request classes gaan verbouwen
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?php namespace System\Helpers; class Request { public static function isPost() { return ($_SERVER['REQUEST_METHOD'] == 'POST')?true:false; } public static function get($key) { return isset($_GET[$key])?$_GET[$key]:false; } public static function post($key) { return isset($_POST[$key])?$_POST[$key]:false; } } ?> |
Deze codequote:
1 2 3 | <?php return ($_SERVER['REQUEST_METHOD'] == 'POST')?true:false; ?> |
1 2 3 | <?php return $_SERVER['REQUEST_METHOD'] == 'POST'; ?> |
Heel erg waarquote:Op dinsdag 14 januari 2014 11:43 schreef zoem het volgende:
[..]
Deze code
[ code verwijderd ]
is hetzelfde als dit
[ code verwijderd ]
Je linkt naar de ini directive variables_order, terwijl eigenlijk request_order wordt gebruikt om $_REQUEST te vullen. In beide kun je ook E en S vinden (Environment en Server).quote:Op maandag 13 januari 2014 22:35 schreef zoem het volgende:
[..]
Nadeel is dat $_REQUEST de data uit $_GET, $_POST en $_COOKIE combineert. Dat creëert 2 potentiele problemen:
1) De data van $_COOKIE, $_POST en $_GET overschrijven elkaar als er dezelfde keys bestaan, wat kan leiden tot onverwacht gedrag. De standaarvolgorde is G, P en dan C.
2) Omdat $_COOKIE voorrang heeft op $_GET en $_POST, kan er mogelijk cookiedata op onveilige plekken terechtkomen.
NB: De volgorde en de aanwezigheid van cookiedata hangt af van de php.ini directives.
Heb je helemaal gelijk in, maar:quote:Op dinsdag 14 januari 2014 21:15 schreef Light het volgende:
[..]
Je linkt naar de ini directive variables_order, terwijl eigenlijk request_order wordt gebruikt om $_REQUEST te vullen. In beide kun je ook E en S vinden (Environment en Server).
Met variables_order als anchor staan ze allebei in beeld Was even uit praktische overweging.quote:request_order string
If this directive is not set, variables_order is used for $_REQUEST contents.
Ik vind het nogal lelijk in php eerlijk gezegdquote:Op maandag 13 januari 2014 21:34 schreef Light het volgende:
[..]
Tegenwoordig heeft PHP namespaces om dat soort conflicten te voorkomen.
Waarom precies?quote:Op woensdag 15 januari 2014 17:41 schreef wipes66 het volgende:
[..]
Ik vind het nogal lelijk in php eerlijk gezegd
namespaces zijn juist een verademing en ik word er blij van in de codequote:Op woensdag 15 januari 2014 20:47 schreef wipes66 het volgende:
[..]
Omdat het net lijkt of je een letter escaped zeg maar.
Waar had jij voor gekozen?quote:Op woensdag 15 januari 2014 22:31 schreef rekenwonder het volgende:
De keuze voor de backslash was inderdaad een merkwaardige.
Punt. Wat jij?quote:
Nadeel is dat de punt ook wordt gebruikt met het koppelen van strings.quote:
Je gebruikt dat al voor static calls.quote:Op donderdag 16 januari 2014 08:17 schreef slacker_nl het volgende:
:: wellicht: Dit::is::Mijn::Namespace::yo
Net als bij C++ dus, waar :: voor namespaces en statics wordt gebruikt.quote:Op donderdag 16 januari 2014 08:23 schreef totalvamp het volgende:
[..]
Je gebruikt dat al voor static calls.
Dat is in Perl ook zo. Niks geen probleem.quote:Op donderdag 16 januari 2014 08:23 schreef totalvamp het volgende:
[..]
Je gebruikt dat al voor static calls.
Dan heb je weer een probleem bij berekeningen '10 / 5'.quote:Op donderdag 16 januari 2014 08:48 schreef KomtTijd... het volgende:
Ohja en een (of twee?) forward slash had ik al een stuk mooier gevonden. Backslash
quote:Op donderdag 16 januari 2014 08:43 schreef Aether het volgende:
[..]
Net als bij C++ dus, waar :: voor namespaces en statics wordt gebruikt.
Ik snap het ook niet dan. maarja bij PHP doen ze wel meer dingen op een andere manier.quote:Op donderdag 16 januari 2014 08:45 schreef slacker_nl het volgende:
[..]
Dat is in Perl ook zo. Niks geen probleem.
Beetje parser kan dat wel handelen. Dat het namespace-statement het eerste statement in een script moet zijn, zou al genoeg hint moeten zijn voor de parser om het te kunnen handelen.quote:Op donderdag 16 januari 2014 08:05 schreef totalvamp het volgende:
[..]
Nadeel is dat de punt ook wordt gebruikt met het koppelen van strings.
Dan is de \ nog de betere met de rest die daar staat...quote:Op donderdag 16 januari 2014 09:42 schreef Aether het volgende:
Oorspronkelijke voorstellen:
https://wiki.php.net/rfc/namespaceseparator
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |