login  Naam:   Wachtwoord: 
Registreer je!
 Nota's op tutorial:

Tutorials > PHP > PEAR codeer stijl
Pagina:

Reacties op de tutorial PEAR codeer stijl


Offline  Stijn1
Gepost op: 16 augustus 2005 - 18:05
Gouden medaille

PHP ver gevorderde


Wat ikzelf nooit doe is dit:
  1. <?php
  2. if(true === true)
  3. {
  4. doefunctie();
  5. }
  6. ?>

Ik doe altijd:
  1. <?php
  2. if(true === true){
  3.  
  4. doefunctie();
  5. }
  6. ?>


Wat ik zelf ook nog handig vind is dit:
  1. <?php
  2. $vVar = 'test'; // variabele => $v dan de Naam
  3. $bBool = true; // boolian => $v dan de Naam
  4. $aArray = array('test', 'test1'); // array => $a dan de Naam
  5. // enz
  6.  
  7. $qQeury = mysql_query("..."); // query => $q dan de Naam
  8. $fFetch = mysql_fetch_assoc($qQuery); // fetchen => $f dan de Naam
  9. // enz
  10. ?>


Maarja, ieder heeft toch altijd zijn eigen stijl, ik script nu al heel anders als vroeger, nu ben ik echt heel netjes beginnen te scripten.

Offline  smoos
Gepost op: 16 augustus 2005 - 18:46
PHP gevorderde

  1. <?php
  2. if(true === true)
  3. {
  4. doefunctie();
  5. }
  6. ?>

dit doe ik wel want dan kan je heel makkelijk erachter komen. waar er 1 start en stopt. (gewoon in 1 rechte lijn omhoog en omlaag scrolle)


  1. <?php
  2. /* dit principe doe ik ook want dat is overzigtelijk voor de inhoud ervan.
  3. alleen doe ik niet $f[naam] maar $fa[naam]
  4. (fa staat dan voor fetch assoc, niet dat ik gebruik maak
  5. van fo ofzo:S (fetch object)*/
  6. $qQeury = mysql_query("...");
  7. $faFetch = mysql_fetch_assoc($qQuery);
  8. ?>

Offline  nemesiskoen
Gepost op: 16 augustus 2005 - 19:28
Gouden medaille

PHP expert


  1. <?php
  2. if(true === true)
  3. {
  4. doefunctie();
  5. }
  6. ?>

Stat dit dan zo in mijn tutorial?
Niet dus:)
  1. if(true==true){

Zo staat het er toch duidelijk in hoor.
Bij functies niet, zoals ik daar dan ook duidelijk vernoem. Misschien eerst de volledige tutorial lezen (vooral met betrekking tot het stukje waar je op reageert) voor je reageert.

Citaat:
$vVar = 'test'; // variabele => $v dan de Naam
$bBool = true; // boolian => $v dan de Naam

Je bedoelt wss $b van de Naam.
Maar wat is een boolean dan? Een boolean is ook een variabele. Dus zou je bij vVar dan eigenlijk sString moeten zetten en voor een integer iInteger. Maar om de een of andere reden heb ik een enorme hekel aan die schrijfwijze. Ik vind het enorm onduidelijk. Afkortingen die niet iedereen gebruikt/kent. Beter vind ik:

  1. <?php
  2. $naam = "Koen";
  3. $pass = "passwoord";
  4. //ipv
  5. $sString1 = "Koen";
  6. $sString2 = "passwoord";
  7.  
  8. //iets simpeler om te controleren...
  9. //nu weet ik dat je dan kan zeggen, gebruik dan sNaam
  10. //maar is een naam niet altijd een string?
  11. //naam is duidelijk genoeg, en als er meer namen nodig zijn...
  12. //==>array
  13. ?>


Offline  Ontani
Gepost op: 17 augustus 2005 - 00:01
Gouden medailleGouden medailleGouden medailleGouden medaille

-1


nemesiskoen, k vind het geen goed idee om iets te echo'en in een functie, k zou eerder iets laten terug geven en dit dan echo'en waar je de functie aanroept (beetje richting OOP)

Offline  Gerard
Gepost op: 17 augustus 2005 - 01:44
Ouwe rakker

if((isset($var)) && is_numeric($var)) {

in je 2de grijze blok, je hebt dus een ) teveel

ontopic:

Uitstekende tutorial, iets wat ik al lang toepas en mij al heel veel zoekwerk heeft gescheeld.

Offline  nemesiskoen
Gepost op: 17 augustus 2005 - 09:53
Gouden medaille

PHP expert


Citaat:
nemesiskoen, k vind het geen goed idee om iets te echo'en in een functie, k zou eerder iets laten terug geven en dit dan echo'en waar je de functie aanroept (beetje richting OOP)

Je hebt gelijk, maar ik moest een voorbeeld aantonen waarbij een functie iets uitvoert en TRUE op succes terugstuurt en FALSE als het niet is gelukt.

@Proximus: je hebt gelijk, bedankt om het te melden.:)

Offline  MFdriver
Gepost op: 17 augustus 2005 - 13:14
PHP interesse

ik doe het pas raar 

ik doe eerst if (blaat != blaat2) {
}

dan de volgende stap is, de functie ofzo tss de acolade te zetten, ezo voort, zo ben ik er zeker van datik nooit een } ofzo vergeet 

maar voor de rest, is pear nogal vrij logish, want ook ik lijn alles netjes uit (of probeer toch )

Offline  nemesiskoen
Gepost op: 17 augustus 2005 - 13:16
Gouden medaille

PHP expert


Tussen welke accolade?
Want ik snap je uitleg niet.
Geef is een voorbeeld van wat jij doet bij dit:

  1. <?php
  2. if(voorwaarde) {
  3. voerFunctieUit();
  4. if(voorwaarde2) {
  5. voerAndereFunctieUit();
  6. } else {
  7. voerNogAndereFunctieUit();
  8. }
  9. } elseif(voorwaarde3) {
  10. doeIets();;
  11. } else {
  12. doeIetsAnders();
  13. }
  14. ?>

Offline  Legolas
Gepost op: 17 augustus 2005 - 13:44
Onbekend

  1. <?php
  2. $var=5;
  3. if((isset($var) && is_numeric($var)) {
  4. if($var==5){
  5. echo "var is 5";
  6. } else {
  7. echo "var is niet gelijk aan 5";
  8. doeIets();
  9. doetNogiets();
  10. }
  11. ?>

weet niet of proximus dit zei, snapte ik niet exact maar die 2e ' ( ' op regel 3 is hier fout.

Offline  nemesiskoen
Gepost op: 17 augustus 2005 - 13:53
Gouden medaille

PHP expert


Eigenlijk nu ik het nog eens bekijk, proximus had eigenlijk geen gelijk. Er zat een fout in (als je volgens de PEAR standaarden wilt leven). Maar niet die. Ik heb dus dat haakje weggelaten terwijl het niet weg moest, wat maakt dat een ander haakje ook weg moet (wat ook niet moet).

Het moet zo zijn:
  1. if((isset($var)) && (is_numeric($var))) {

zoals het nu is.
Zoals je kan lezen moet rond elke voorwaarde haakjes gescheiden van elkaar door een spatie en dan een bepaalde operator (bv. && of || of iets anders) vervolgens nog een spatie en dan weer tussen haakjes de volgende voorwaarde.
Ik open 1 voor de if, ik open een voor de eerste voorwaarde waarin een functie staat (weer een openen). Na de functie haakje sluiten, plus haakje van voorwaarde sluiten. Spatie. Operator. Spatie. Open haakje voor voorwaarde. Open haakje voor functie. Sluit haakje voor functie. Sluit haakje voor voorwaarde. Sluit haakje voor if.

Offline  Ontani
Gepost op: 17 augustus 2005 - 20:25
Gouden medailleGouden medailleGouden medailleGouden medaille

-1


if((voorwaarde) operator (voorwaarde)) {

voor de mensen die de uitleg hierboven nie snapte 

Offline  nemesiskoen
Gepost op: 17 augustus 2005 - 20:34
Gouden medaille

PHP expert


thnx dikke... daar komt het dus op neer:p

Offline  Legolas
Gepost op: 18 augustus 2005 - 11:17
Onbekend

Citaat:
[I][B]nemesiskoen[/B] schreef op 17 Augustus 2005 - 13:53[/I]

Eigenlijk nu ik het nog eens bekijk, proximus had eigenlijk geen gelijk. Er zat een fout in (als je volgens de PEAR standaarden wilt leven). Maar niet die. Ik heb dus dat haakje weggelaten terwijl het niet weg moest, wat maakt dat een ander haakje ook weg moet (wat ook niet moet).

Het moet zo zijn:
[..code..]
zoals het nu is.
Zoals je kan lezen moet rond elke voorwaarde haakjes gescheiden van elkaar door een spatie en dan een bepaalde operator (bv. && of || of iets anders) vervolgens nog een spatie en dan weer tussen haakjes de volgende voorwaarde.
Ik open 1 voor de if, ik open een voor de eerste voorwaarde waarin een functie staat (weer een openen). Na de functie haakje sluiten, plus haakje van voorwaarde sluiten. Spatie. Operator. Spatie. Open haakje voor voorwaarde. Open haakje voor functie. Sluit haakje voor functie. Sluit haakje voor voorwaarde. Sluit haakje voor if.


euh? moet dan ook: if( (true) ) ?:s er zit overigens wel iets in;-), om operators te scheiden van functies bijvoorbeeld

Offline  nemesiskoen
Gepost op: 18 augustus 2005 - 11:19
Gouden medaille

PHP expert


Citaat:
moet dan ook: if( (true) )

neen

  1. if(statement) {
  2. if((statement1) && (statement2)) {

Offline  Fenrir
Gepost op: 23 augustus 2005 - 20:19
PHP expert

Ik ben het hier mee eens, op 1 ding na:
  1. if(){
  2. }else{
  3.  
  4. }
  5.  
  6. -->
  7.  
  8. if()
  9. {
  10.  
  11. }else
  12. {
  13.  
  14. }

Offline  nemesiskoen
Gepost op: 27 augustus 2005 - 22:00
Gouden medaille

PHP expert


Citaat:
[I][B]Fenrir[/B] schreef op 23 Augustus 2005 - 20:19[/I]

Ik ben het hier mee eens, op 1 ding na:
[..code..]

to each his own.

Ikzelf ben voorstander van:
  1. if() {
  2. }
  3. else {
  4. }

Offline  MothZone
Gepost op: 28 augustus 2005 - 21:48
PHP ver gevorderde

ik doe alles zoals bij functies
  1. if()
  2. {
  3. //
  4. }
  5. else
  6. {
  7. //
  8. }


zoals iemand al zei (weet nimeer wie) moet je dan gewoon je pijltje zetten bij een sluittag, naar boven scrollen, en dan zie je meteen waar hij opent.

vind deze tut eigenlijk beetje onnodig, omdat iedereen toch zijn eigen manier van scripten heeft?

Offline  nemesiskoen
Gepost op: 28 augustus 2005 - 22:11
Gouden medaille

PHP expert


Deze tut is om een stijl aan te leren die ontwikkeld is door proffesionele programmeurs. To each his own zoals ik al heb gezegd maar het is gewoon om te zien wat de standaarden zijn die verwacht worden bij het ontwikkelen van een groot project. Omdat ze daarbij in 90% van de gevallen de PEAR codeer stijl na leven. Net zoals bij XML is het niet verplicht een DTD (zoek maar op) op voorrand aan te maken maar bij een groot project wordt het zeker wel aangeraden/verplicht.

Citaat:
vind deze tut eigenlijk beetje onnodig, omdat iedereen toch zijn eigen manier van scripten heeft?

Waarom zet je een vraagteken achter een mening?

Offline  Thomas
Gepost op: 29 augustus 2005 - 19:26
Moderator

Ik zie niet in hoe meer accolades het geheel overzichtelijker kunnen maken. Accolades zijn handig / noodzakelijk als je || en && gaat combineren, en mensen die dit verschil niet (willen) begrijpen moet zich hier gewoon niet mee bezig houden .

Ik ben van mening dat een functie altijd één return-statement dient te hebben, in plaats van meerdere. Als dit inhoudt dat je een (of meer) extra tussentijdse variabele(n) moet introduceren die de geldigheid van een toestand (predikaat) omschrijven - so be it.

Bij phpBB (jeweetwel, dat bulletinboard-systeem) zit ook een .htm file die "codingstandards.htm" o.i.d. heet, hierin staat ook zo'n soort codering-standard beschreven, die wellicht nog undubbelzinniger / netter is dan die van PEAR (voor zover ik er hier over gelezen heb).

Zitten trouwens nog wel wat spellingsfouten in hier nem .

Offline  prorsoft
Gepost op: 11 juli 2006 - 10:09
PHP gevorderde

geef mij maar mijn eigen manier....
hier zie ik niet direct aan dat er een fout in zit: (iemand anders mss wel)
  1. <?php
  2. $var=5;
  3. if((isset($var)) && (is_numeric($var))) {
  4. if($var==5)){
  5. echo "var is 5";
  6. } else {
  7. echo "var is niet gelijk aan 5";
  8. doeIets();
  9. doetNogiets();
  10. }
  11. ?>


hierin wel:
  1. <?php
  2. $var=5;
  3. if((isset($var)) && (is_numeric($var)))
  4. {
  5. if($var==5))
  6. {
  7. echo "var is 5";
  8. }
  9. else
  10. {
  11. echo "var is niet gelijk aan 5";
  12. doeIets();
  13. doetNogiets();
  14. }
  15. ?>


PS. de case 's spring ik meestal ook in en de breaks half;-)

Offline  nemesiskoen
Gepost op: 11 juli 2006 - 11:54
Gouden medaille

PHP expert


@prorsoft: ga je nu eens begrijpen dat dit een suggestie is en geen verplichting. Ik laat een van de vele mogelijkheden zien. Dus de opmerking 'mijn stijl is beter' is goed als je ze voor jezelf houdt. No one cares... to each his own (hoeveel keer heb ik dat al wel niet gezegd?)!

Offline  timmie_loots
Gepost op: 14 december 2007 - 19:25
PHP gevorderde

Het leukste is dat de scripts niet eens allemaal voldoen aan de PEAR Coding Standards.

Laten we het tweede script nemen:

  1. <?php
  2. $var=5;
  3. if((isset($var)) && (is_numeric($var))) {
  4. if($var==5)){
  5. echo "var is 5";
  6. } else {
  7. echo "var is niet gelijk aan 5";
  8. doeIets();
  9. doetNogiets();
  10. }
  11. ?>


Als we beginnen bij regel 2:

  1. $var=5;


Dan zien we direct dat dit al fout is. De handleiding van PEAR zegt:

Citaat:
As displayed above, there should be one space on either side of an equals sign used to assign the return value of a function to a variable.


Het goede voorbeeld is dus:

  1. $var = 5;


Vervolgens gaan we een regel verder (en deze fout komt ook op regel 4 voor) en dan zien we dit:

  1. if((isset($var)) && (is_numeric($var))) {


Lijkt niets mis mee. Maar, als we wederom de PEAR-handleiding raadplegen lezen wij:

Citaat:
Control statements should have one space between the control keyword and opening parenthesis, to distinguish them from function calls.


Het moet dus zijn:

  1. if ((isset($var)) && (is_numeric($var))) {


Dit herhaal je in het script erna nog eens, door te stellen dat dit:

  1. switch($var){


correct is, terwijl dit overduidelijk dit moet zijn:

  1. switch ($var) {


Je doet dit ook fout in de andere codeblokken, maar die laten we nu maar achterwege; mijn punt is duidelijk.

Offline  avdg
Gepost op: 31 december 2007 - 14:21
PHP gevorderde

Nota: er staat er nergens in dat de 'tabs' 4 spaties zijn volgens de pearnormen  

Pagina:

Enkel aanvullende informatie is welkom. Geen prijzende of afkeurende reacties.
 
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.273s