Ron Piggott wrote:
I am wanting to change
echo "<option value=\"" . $months[$month] . "\"";
to output the month number, between 01 and 12 --- DATE value m, the
month with leading 0's. How do I do this? $months is an array, as I
have shown below. Ron
<?php
$months = array('1' => 'January', '2' => 'February', '3' => 'March', '4'
=> 'April', '5' => 'May', '6' => 'June', '7' => 'July', '8' => 'August',
'9' => 'September', '10' => 'October', '11' => 'November', '12' =>
'December');
$current_month = DATE("n");
echo "<SELECT NAME=\"order_received_month\">\r\n";
foreach (range(1, 12) as $month)
{
echo "<option value=\"" . $months[$month] . "\"";
if ( $month == $current_month ) { echo " SELECTED";}
echo">" . $months[$month] . "</option>\r\n";
}
?>
</select>
Ok, I will show you two different ways to do this.
<?php
$months = array(
'1' => 'January',
'2' => 'February',
'3' => 'March',
'4' => 'April',
'5' => 'May',
'6' => 'June',
'7' => 'July',
'8' => 'August',
'9' => 'September',
'10' => 'October',
'11' => 'November',
'12' => 'December',
);
foreach ( $months AS $i => $month ) {
$sel = ( $i == date('n') ? ' selected="selected"' : '');
echo "<option value='{$month}' {$sel}>{$month}</option>\r\n";
}
?>
Personally, I would do something like this.
<?php
$options = array();
for ( $i=1; $i<13; $i++ ) {
$month = date('F', mktime(0,0,0,$i,2,2000));
$sel = ( $i == date('n') ? ' selected="selected"' : '');
$options[] = "<option value='{$month}' {$sel}>{$month}</option>";
}
$options_list = join("\r\n", $options);
echo "<select>{$options_list}</select>";
?>
Now, if you are wanting to display the numerical month with leading
zero's, then you would want to look at the 'm' option for date() or
str_pad().
something like this might show you what you need.
<?php
# str_pad test
echo str_pad(3, 2, '0', STR_PAD_LEFT)
?>
Hope this helps understand a little more.
Jim
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php