By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
424,688 Members | 1,897 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 424,688 IT Pros & Developers. It's quick & easy.

Can I display a month from a number in a csv file?

P: n/a
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
Jul 17 '05 #1
Share this Question
Share on Google+
5 Replies


P: n/a
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/
Jul 17 '05 #2

P: n/a
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.
Jul 17 '05 #3

P: n/a

"Pedro" <he****@hotpop.com> wrote in message
news:bn*************@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)
Jul 17 '05 #4

P: n/a
Carved in mystic runes upon the very living rock, the last words of The
Biscuit Eater of comp.lang.php make plain:

"Pedro" <he****@hotpop.com> wrote in message
news:bn*************@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/
Jul 17 '05 #5

P: n/a
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" <al**@n-o-s-p-a-m-phorm.com> wrote in message
news:Xn**************************@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" <he****@hotpop.com> wrote in message
news:bn*************@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/

Jul 17 '05 #6

This discussion thread is closed

Replies have been disabled for this discussion.