This is a discussion on Can I display a month from a number in a csv file? within the PHP Language forums, part of the PHP Programming Forums category; Greetings from a second day newbie to php. I think I have figured out a way to explode a field ...
|
|||||||
| FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
|
|||
|
Greetings from a second day newbie to php.
I think I have figured out a way to explode a field in a csv file (like 11-08-03) and implode it as 031108 and then compare it to the current date(ymd) to display data after the current date. What I would like to now do is use the 11 and display Nov. Can anybody help or point me in the right direction? Thanks. Bill |
|
|||
|
I noticed that Message-ID: <7eUnb.43950$9E1.180122@attbi_s52> from The
Biscuit Eater contained the following: >Greetings from a second day newbie to php. > >I think I have figured out a way to explode a field in a csv file (like >11-08-03) and implode it as 031108 and then compare it to the current >date(ymd) to display data after the current date. What I would like to now >do is use the 11 and display Nov. Can anybody help or point me in the right >direction? Any particular reason why you're not using a database for this? -- Geoff Berrow It's only Usenet, no one dies. My opinions, not the committee's, mine. Simple RFDs http://www.ckdog.co.uk/rfdmaker/ |
|
|||
|
The Biscuit Eater wrote:
> Greetings from a second day newbie to php. > > I think I have figured out a way to explode a field in a csv file (like > 11-08-03) and implode it as 031108 and then compare it to the current > date(ymd) to display data after the current date. What I would like to now > do is use the 11 and display Nov. Can anybody help or point me in the right > direction? My first idea (probably not the best) was: make an array and select from that: <?php $months = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'); // do whatever you need, including $month = 11; // and, after being real sure 1 <= $month <= 12 echo $months[$month-1]; ?> -- I have a spam filter working. To mail me include "urkxvq" (with or without the quotes) in the subject line, or your mail will be ruthlessly discarded. |
|
|||
|
"Pedro" <hexkid@hotpop.com> wrote in message news:bnpg0p$148ntn$1@ID-203069.news.uni-berlin.de... > My first idea (probably not the best) was: > > make an array and select from that: > > <?php > $months = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', > 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'); > > // do whatever you need, including > $month = 11; > > // and, after being real sure 1 <= $month <= 12 > echo $months[$month-1]; > ?> > Thanks, that was where I was heading when, while driving home this evening, I came up with something that apparently works just fine. I can now pull the next event or all events from a csv file using the following: <? $readfile = file("events.txt"); for ($k=0; $k<=count($readfile)-1; $k++) { $field = split(";",$readfile[$k]); $date = date("Ymd"); $piece = explode("-", $field[0]); $array = array($piece[2], $piece[0], $piece[1]); $c = implode("", $array); $d = date("jS",mktime(0,0,0,$piece[0],$piece[1],$piece[2])); $m = date("M",mktime(0,0,0,$piece[0],$piece[1],$piece[2])); if ($c >= $date) { print ("<a class=\"noUL\" href=\"javascript:void(0);\" onclick=\"window.open('events/$field[0].htm', 'NextEvent', 'scrollbars=yes, resizable=yes, height=600, width=650')\">$m $d - $field[1]</A>"); exit; } } ?> The csv is setup like: 11-06-2003;Beat the Pro;Individual play;tee choice;8:30 AM Shotgun 01-10-2004;Twister;(Scramble-Stableford);Four man teams (white tees) |
|
|||
|
Carved in mystic runes upon the very living rock, the last words of The
Biscuit Eater of comp.lang.php make plain: > > "Pedro" <hexkid@hotpop.com> wrote in message > news:bnpg0p$148ntn$1@ID-203069.news.uni-berlin.de... > >> My first idea (probably not the best) was: >> >> make an array and select from that: >> >> <?php >> $months = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', >> 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'); >> >> // do whatever you need, including >> $month = 11; >> >> // and, after being real sure 1 <= $month <= 12 >> echo $months[$month-1]; >> ?> >> > > Thanks, that was where I was heading when, while driving home this > evening, I came up with something that apparently works just fine. I > can now pull the next event or all events from a csv file using the > following: Great googly-moogly! Now that's newbie code if I ever saw it! :) $thefile = file("events.txt"); while (list(,$record) = each($thefile)) { $fields = split(";", $record); $stamp = strtotime("$field[0] 00:00:00"); if $stamp > time() { [do stuff] } } And you can use the date() function on $stamp to get whatever formatted date info you want. strtotime() is your friend. -- Alan Little Phorm PHP Form Processor http://www.phorm.com/ |
|
|||
|
I want to thank Alan and Jon for sending me in the right direction. With the
following I can pull the next golf tournament from a csv file and display a link to a popup for more information - and in addition, display the days until and sign up deadline. Thanks again for your help. Seems to work nicely... http://www.mgagcai.org/ <? $thefile = file("events.csv"); while (list(,$record) = each($thefile)) { $field = split(";", $record); $stamp = strtotime("$field[0]"); if (ceil(($stamp - time())/86400) >= 0) { echo "<a href=\"javascript:void(0);\" onclick=\"window.open('/" ,date("Ymd", strtotime ($field[0])), ".html', 'NextEvent', 'scrollbars=yes, resizable=yes, height=600, width=650')\">", date("M jS", strtotime ($field[0])), " - $field[1]</A><br />"; echo "<span class=\"sans\">"; if (ceil(($stamp - time())/86400) > 7) { echo ceil(($stamp - time())/86400), " days away"; } else if (ceil(($stamp - time())/86400) >= 4) { echo "Only ", ceil(($stamp - time())/86400), " days away. Sign up by Wednesday evening."; } else if (ceil(($stamp - time())/86400) == 3) { echo "Only ", ceil(($stamp - time())/86400), " days away. Sign up by this evening."; } else if (ceil(($stamp - time())/86400) == 2) { echo "Only ", ceil(($stamp - time())/86400), " days away. Too late to sign up."; } else if (ceil(($stamp - time())/86400) == 1) { echo "Only ", ceil(($stamp - time())/86400), " day away. Too late to sign up."; } else { echo "Event is today"; } echo "</span>"; exit; } } ?> --- Bill "Chessie" Hayes http://www.billhayes.us ICQ#: 9635690 Bakers trade bread recipes on a knead to know basis. "Alan Little" <alan@n-o-s-p-a-m-phorm.com> wrote in message news:Xns942457892662Dalanphormcom@216.196.97.132.. . > Carved in mystic runes upon the very living rock, the last words of The > Biscuit Eater of comp.lang.php make plain: > > > > > "Pedro" <hexkid@hotpop.com> wrote in message > > news:bnpg0p$148ntn$1@ID-203069.news.uni-berlin.de... > > > >> My first idea (probably not the best) was: > >> > >> make an array and select from that: > >> > >> <?php > >> $months = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', > >> 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'); > >> > >> // do whatever you need, including > >> $month = 11; > >> > >> // and, after being real sure 1 <= $month <= 12 > >> echo $months[$month-1]; > >> ?> > >> > > > > Thanks, that was where I was heading when, while driving home this > > evening, I came up with something that apparently works just fine. I > > can now pull the next event or all events from a csv file using the > > following: > > Great googly-moogly! Now that's newbie code if I ever saw it! :) > > $thefile = file("events.txt"); > while (list(,$record) = each($thefile)) { > $fields = split(";", $record); > $stamp = strtotime("$field[0] 00:00:00"); > if $stamp > time() { > [do stuff] > } > } > > And you can use the date() function on $stamp to get whatever formatted > date info you want. strtotime() is your friend. > > -- > Alan Little > Phorm PHP Form Processor > http://www.phorm.com/ |