用php、OOP方式创建显示日期函数
我开始学习PHP OOP,我有这个练习来创建一个显示日期的函数。 我想得出这个结果: $date=新的(“2014年1月14日”);//例如,此日期来自用户用php、OOP方式创建显示日期函数,php,Php,我开始学习PHP OOP,我有这个练习来创建一个显示日期的函数。 我想得出这个结果: $date=新的(“2014年1月14日”);//例如,此日期来自用户 echo $date -> displaDate ('YYYY-MM-JJ'); // Would result to 2014-01-14 echo $date -> day; //Would result to 14 echo $date -> dayOfWeek; //Would result to Thursday
echo $date -> displaDate ('YYYY-MM-JJ'); // Would result to 2014-01-14
echo $date -> day; //Would result to 14
echo $date -> dayOfWeek; //Would result to Thursday
有人能给我解释一下如何开始制作这个函数吗?我知道函数有变量和方法
<?php
$dt = new DateTime();
echo $dt->format('j-n-Y');
?>
从5.2版开始,PHP有DateTime
类来表示日期和时间
例如
$dateTime=newdatetime('NOW');
回声“;
打印(日期时间);
回声“;
如果你想自己实现它,你可以这样做:
<!DOCTYPE html>
<html>
<body>
<?php
$t=time();
echo($t . "<br>");
echo(date('Y-m-d',$t));
?>
</body>
</html>
很简单
class Date{
private $dateString;
function __construct( $dateString )
{
$this->dateString = $dateString;
}
// Method to display date in different formats.
public function displayDate( $dateFormat )
{
list( $day, $month, $year ) = explode( '-', $this->dateString);
switch($dateFormat)
{
case "YYYY-mm-dd" : $format = $year.'-'.$month.'-'.$day; break;
case "mm-dd-YYYY" : $format = $month.'-'.$day.'-'.$year; break;
default : $format = $year.'-'.$month.'-'.$day;
}
return $format;
}
//Method to get day
public function day()
{
$day = date('d', strtotime($this->dateString));
return $day;
}
//Method to get the day of the week.
public function dayofweek()
{
$weekday = date('l', strtotime($this->dateString));
return $weekday;
}
//Method to get month in text.
public function getmonth()
{
$month = date('F', strtotime($this->dateString));
return $month;
}
}
?>
@Daniel Saad,谢谢你帮助我理解。以下是我问题的答案:
<?php
//Initialisation
$date = new Date('14-01-2014');
$anotherdate = new Date('13-07-1979')
?>
<h3>Instance 1</h3>
<p>Date: <?php echo $date->displayDate('YYYY-mm-dd'); ?></p>
<p>Day: <?php echo $date->day(); ?></p>
<p>Day of week: <?php echo $date->dayofweek(); ?></p>
<p>Month: <?php echo $date->getmonth(); ?></p> <br />
index.php
实例1
日期:
日期:
星期几:
月份:
结果:
实例1
日期:2014-01-14
日期:14
星期二
月份:1月
我希望这也能帮助那些刚刚开始理解OOP的人。为什么不看看它和方法呢?你似乎还不清楚函数、类、对象和方法之间的区别。我建议你先学点理论。查找一些基本的OOP教程。@s3v3n我之所以问这个问题,是因为我正在学习理论,还检查了一些教程。为什么不简单地编写一个关于DateTime的包装器呢?这个类旨在包装PHP的日期、时间或DateTime功能之一。我以为他的意思是他需要把这个作为家庭作业来实施。你说得对,丹尼尔。谢谢请检查这种类型。
class Date{
private $dateString;
function __construct( $dateString )
{
$this->dateString = $dateString;
}
// Method to display date in different formats.
public function displayDate( $dateFormat )
{
list( $day, $month, $year ) = explode( '-', $this->dateString);
switch($dateFormat)
{
case "YYYY-mm-dd" : $format = $year.'-'.$month.'-'.$day; break;
case "mm-dd-YYYY" : $format = $month.'-'.$day.'-'.$year; break;
default : $format = $year.'-'.$month.'-'.$day;
}
return $format;
}
//Method to get day
public function day()
{
$day = date('d', strtotime($this->dateString));
return $day;
}
//Method to get the day of the week.
public function dayofweek()
{
$weekday = date('l', strtotime($this->dateString));
return $weekday;
}
//Method to get month in text.
public function getmonth()
{
$month = date('F', strtotime($this->dateString));
return $month;
}
}
?>
<?php
//Initialisation
$date = new Date('14-01-2014');
$anotherdate = new Date('13-07-1979')
?>
<h3>Instance 1</h3>
<p>Date: <?php echo $date->displayDate('YYYY-mm-dd'); ?></p>
<p>Day: <?php echo $date->day(); ?></p>
<p>Day of week: <?php echo $date->dayofweek(); ?></p>
<p>Month: <?php echo $date->getmonth(); ?></p> <br />