Hoe zou date('w') het korter maken dan wat hierboven staat?quote:Op zaterdag 9 januari 2010 23:58 schreef GlowMouse het volgende:
op basis van date('t') en date('w') moet het in veel minder regels kunnen
Omdat je op basis van het dagnummer van de laatste dag in een keer het juiste aantal dagen er vanaf kunt trekkenquote:Op zondag 10 januari 2010 00:01 schreef Tijn het volgende:
[..]
Hoe zou date('w') het korter maken dan wat hierboven staat?
Oh zo. Ja, dan zou je het met een simpel sommetje kunnen oplossen.quote:Op zondag 10 januari 2010 00:02 schreef Intrepidity het volgende:
[..]
Omdat je op basis van het dagnummer van de laatste dag in een keer het juiste aantal dagen er vanaf kunt trekkenDan heb je ook geen for-lus meer nodig.
1 2 3 4 5 6 7 | function lastSaturday($month, $year) { $daysInMonth = date('t', mktime(0,0,0,$month,1,$year)); $lastday = date('w', mktime(0,0,0,$month,$daysInMonth,$year)); return $daysInMonth - (($lastday+1)%7); } ?> |
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 | /** * @param <int> $weekday Dag van de week (0 .. 6 - Zondag .. Zaterdag) * @param <int> $month * @param <int> $year * @return <int> timestamp van de laatste ...dag van de maand */ function lastDayOfMonth($weekday, $month = null, $year = null) { if(is_null($year)) { $year = date('Y'); } if(is_null($month)) { $month = date('m') + 1; } else { $month++; } $dayOfMonth = 0; $dayOfWeek = date('w', mktime(0, 0, 0, $month, $dayOfMonth, $year)); $dayOfMonth = $weekday - $dayOfWeek; if($dayOfMonth > 0) { //Verkeerde maand $dayOfMonth -= 7; } return mktime(0, 0, 0, $month, $dayOfMonth, $year); } ?> |
Hier komt alleen niet het goede antwoord uitquote:Op zondag 10 januari 2010 00:07 schreef GlowMouse het volgende:
je krijgt dan zoiets
[ code verwijderd ]
Mooi, en netjes met params.quote:Op zondag 10 januari 2010 00:11 schreef Light het volgende:
Ik ben nog even verder gaan puzzelen en heb nu een oplossing die Chandler-proof is
[ code verwijderd ]
Werkt voor alle dagen van de week, gewoon met een parameter.
nu welquote:Op zondag 10 januari 2010 00:14 schreef Tijn het volgende:
[..]
Hier komt alleen niet het goede antwoord uit
Ieder z'n ding idd. Ik vind het zo'n verspilling van ruimte om voor iedere curly brace open weer een nieuwe regel te beginnen. De sluit-brace staat wel op z'n eigen regel (behalve bij een if als er een else volgt).quote:Op zondag 10 januari 2010 00:19 schreef Intrepidity het volgende:
Achja, ieder z'n eigen ding heIk kan er bijvoorbeeld niet tegen om de curly braces naast een klasse/functienaam te zetten
Braces staan bij mij altijd op een volgende regel
True, leesbaarheid is ook belangrijk. Maar 'k denk niet dat PHP je code zo verandert dat de berekening wordt geoptimaliseerd, dus een efficient algoritme verzinnen moet je wel zelf doen.quote:En inderdaad, alles zo compact mogelijk maken heeft nauwelijks zin meer. PHP compileert en optimaliseert zijn code netjes tegenwoordig.
Thanksquote:Op zondag 10 januari 2010 00:17 schreef Tuvai.net het volgende:
[..]
Mooi, en netjes met params. [ afbeelding ]
Eensquote:Ik prefereer leesbare, geïndente code over code die zo klein en compact mogelijk moet (tenzij het van belang is voor een merkbare performancewinst natuurlijk) zijn. Dat akelige Perl tijdperk waarin we zo absurd gelimiteerd waren zijn we inmiddels wel voorbij.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | { if( $expr2 ) { if( $expr3 ) { Klasje->Methode(); if( $expr4 ) { Klasje->EenMethode(); } else { Klasje->Meer(); Klasje->Code(); } } else { Klasje->Vaudje('omg'); } } else { Klasje->Vaudje('wtf'); } } else { Klasje->Vaudje('lol'); } |
quote:Op zaterdag 9 januari 2010 23:54 schreef Tuvai.net het volgende:
Wat gebruiken jullie eigenlijk om PDFs on the fly te genereren? Ik gebruik nu al heel lange tijd FPDF ( http://www.fpdf.org ) maar ik ben er elke keer érg lang mee bezig om dynamische documenten te maken, die gedeeltelijk uit variabele content en gedeeltelijk uit vaste content bestaan. Nou is PDF scripts maken sowieso al niet mijn meest favoriete bezigheid, maar in .NET gaat het me een stuk sneller af met de iText / iSharp of dbAutoTrack libraries.
Welke raden jullie aan?
Maar stel ik maak een factuur voor de klant aan, voeg ik dan 2 extra regels toe?quote:Op vrijdag 8 januari 2010 12:25 schreef Tuvai.net het volgende:
[..]
Inderdaad niet meer van een kwestie van je code in een cronjob zetten die om de zoveel tijd draait. Vrijwel hetzelfde als wat je in Windows doet met executables en geplande taken / scheduled tasks.
Ik zou zorgen dat je bij het aanmaken van een factuur de datum kunt opgeven waarop 'ie verzonden moet worden en dat geheel dan kunt opslaan in je database.quote:Op zondag 10 januari 2010 20:51 schreef wobbel het volgende:
[..]
Maar stel ik maak een factuur voor de klant aan, voeg ik dan 2 extra regels toe?
Veld "Periode" dus 14, 31, 365
Veld "Aantal" -1 is ongelimiteerd doorgaan, of 12 voor 12 maanden (als je voor 31 dagen hebt gekozen)
Of periode + aantal opgeven, en dan dmv een cronjob elke dag controleren of er een factuur gegenereerd moet worden. En dan als je maandelijks kiest dat hij het altijd op de 15e doet bijv.?
Tja, dat is natuurlijk een kwestie van je fantasie gebruiken, en volledig afhankelijk van je script en hetgeen je wilt doen.quote:Op zondag 10 januari 2010 20:51 schreef wobbel het volgende:
[..]
Maar stel ik maak een factuur voor de klant aan, voeg ik dan 2 extra regels toe?
Veld "Periode" dus 14, 31, 365
Veld "Aantal" -1 is ongelimiteerd doorgaan, of 12 voor 12 maanden (als je voor 31 dagen hebt gekozen)
Of periode + aantal opgeven, en dan dmv een cronjob elke dag controleren of er een factuur gegenereerd moet worden. En dan als je maandelijks kiest dat hij het altijd op de 15e doet bijv.?
Jewel, met FPDF vanwege gebrek aan beter, dus ik kan je niet verder helpenquote:Op zondag 10 januari 2010 22:01 schreef Tuvai.net het volgende:
Maare, niemand maakt hier dus dynamische PDFs in PHP?
Ook al FPDF dus.quote:Op zondag 10 januari 2010 22:16 schreef Intrepidity het volgende:
[..]
Jewel, met FPDF vanwege gebrek aan beter, dus ik kan je niet verder helpenJe kunt naar de PDF module van PHP zelf kijken (http://php.net/manual/en/book.pdf.php), maar ik zie niet 1,2,3 in hoe dat beter is als FPDF
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 | function confirm_order($ID) { $d=connectDB(); $r=runquery("SELECT * FROM orders WHERE order_id=".quote_smart($ID,$d),$d); if(mysql_num_rows($r)=='1'){ $row=mysql_fetch_array($r); if($row["order_status"]=='2'){ $echo= '<p>Je bestelling is al bevestigd, maar je krijgt nu het mailtje met de gegevens en verdere instructies nogmaals.</p>'; } else{ $r=runquery("UPDATE orders SET order_status='2' WHERE order_id=".quote_smart($ID,$d),$d); $echo= '<p>Je bestelling is bevestigd. Je krijgt nu een mailtje met de betaalgegevens en verdere instructies.</p>'; } $mail_to=$row["email_order"]; $mail_from='FROM: niet@relevant.nl'; $mail_subject='subject'; if($row["delivery_option"]=='sendoff'){ $mail_body='Beste '.$row["name_order"].', Bedankt voor het bevestigen van je bestelling. *nog wat tekst*'; } else{ $mail_body='Beste '.$row["name_order"].', Bedankt voor het bevestigen van je bestelling. *wat andere tekst dan die ander*'; } mail($mail_to,$mail_subject,$mail_body,$mail_from); return $echo; } else{ return '<p>Oeps! Je probeerde een bestelling te bevestigen die niet bestaat! Stuur even een mailtje, dan kunnen we zien wat er fout is gegaan.</p>'; } } ?> |
Als je met zoiets aan de slag gaat, kun je je dan niet beter storten op bv Zend Framework?quote:Op maandag 11 januari 2010 11:59 schreef Sitethief het volgende:
Iemand ervaring met MODx? Ik ben er nu een beetje mee aan het stoeien, maar het ziet er allemaal heel tof uit.
Opdracht van de baasquote:Op maandag 11 januari 2010 12:06 schreef Tijn het volgende:
[..]
Als je met zoiets aan de slag gaat, kun je je dan niet beter storten op bv Zend Framework?
1 2 3 4 5 6 | var_dump($aResult); if($aResult["numberOfTries"]<=3) return true; else return false; |
Iemand enig iedee hoe dat kan? :)quote:array(1) {
[0]=>
array(7) {
["id"]=>
NULL
["time"]=>
NULL
["ip"]=>
NULL
["email"]=>
NULL
["password"]=>
NULL
["success"]=>
NULL
["numberOfTries"]=>
string(1) "0"
}
}
Warning (8): LogLogintriesTable.php at 31 Undefined index: numberOfTries
1 2 3 4 5 | echo '<pre>'; var_dump($aResult); echo '</pre>'; ?> |
Kan ookquote:Op maandag 11 januari 2010 13:55 schreef Sitethief het volgende:
Wat is er mis met
[ code verwijderd ]
Dat ziet er wat leesbaarder uit vind ik altijd.
Helemaal als je ook iets van xdebug geinstalleerd hebt (op de server).quote:Op maandag 11 januari 2010 14:20 schreef hamkaastosti het volgende:
ik gebruik altijd var_dump want die geeft meer bruikbare informatie
Hier ook, verwerkt in een kleine functie dump, zodat ik niet elke keer dat moet tikken..quote:Op maandag 11 januari 2010 13:55 schreef Sitethief het volgende:
Wat is er mis met
[ code verwijderd ]
Dat ziet er wat leesbaarder uit vind ik altijd.
Nee, want als ik na of voor de mail() functie een echo doe om dat te testen, wordt dat maar een keer afgedrukt. En dan zou het altijd twee mailtjes moeten zijn, niet alleen de eerste keer dat je op de link in het mailtje klikt.quote:Op maandag 11 januari 2010 07:12 schreef Intrepidity het volgende:
Zo op het eerste gezicht lijkt die functie in orde. Ik vermoed dan ook dat die functie ergens 2 keer aangeroepen wordt..
Uhm, als de Functie 2x word aangeroepen, dan betekent dat niet dat de echo voor of na de functie 2x word aangeroepn, dus dat is geen handige manier om het te testen. Je zou dan de echo IN de functie moeten zetten.quote:Op maandag 11 januari 2010 18:42 schreef wonderer het volgende:
[..]
Nee, want als ik na of voor de mail() functie een echo doe om dat te testen, wordt dat maar een keer afgedrukt. En dan zou het altijd twee mailtjes moeten zijn, niet alleen de eerste keer dat je op de link in het mailtje klikt.
Heb je het nou over de hele functie (confirm_order()), of mail()? Waarom zou mail() binnen de functie in vredesnaam twee keer worden aangeroepen als het er maar een keer staat?quote:Op maandag 11 januari 2010 19:28 schreef ParvusM het volgende:
[..]
Uhm, als de Functie 2x word aangeroepen, dan betekent dat niet dat de echo voor of na de functie 2x word aangeroepn, dus dat is geen handige manier om het te testen. Je zou dan de echo IN de functie moeten zetten.
Met XDebug heb je ook geen <pre> nodig.quote:Op maandag 11 januari 2010 14:34 schreef Sitethief het volgende:
Ik bedoelde natuurlijk <pre>, niet print_r, wat je verder voor function of wat dan ook gebruikt was niet mijn punt.
1 2 3 4 | // 2e parameter is preserve_keys, oftewel, de keys worden hernummerd en alleen de waarden worden omgedraaid $array = array_reverse($array, false); ?> |
array_flip doet iets anders. Die zorgt dat keys en waarden omgedraaid worden, dus array(0 => 'a', 1 => 'b') wordt array('a' => 0, 'b' => 1)quote:Op dinsdag 12 januari 2010 22:46 schreef GlowMouse het volgende:
array_flipoh zonder key preserve; dan array_reverse.
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |