Skip to content

Instantly share code, notes, and snippets.

@alxfv
Last active August 29, 2015 14:05
Show Gist options
  • Save alxfv/5bfae63a98d428192ee1 to your computer and use it in GitHub Desktop.
Save alxfv/5bfae63a98d428192ee1 to your computer and use it in GitHub Desktop.
trait example
<?php
trait CreatedTrait
{
/**
* @var DateTime
*/
protected $created;
/**
* @return DateTime
*/
public function getCreated()
{
return $this->created;
}
/**
* @param DateTime $created
*/
public function setCreated($created)
{
$this->created = $created;
}
}
class User
{
use CreatedTrait;
}
class Article
{
use CreatedTrait;
}
$user = new User();
$user->setCreated(new DateTime());
$article = new Article();
$article->setCreated(new \DateTime());
echo sprintf(
"User created %s, article created %s",
$user->getCreated()->format('d.m.Y'),
$article->getCreated()->format('d.m.Y')
);
?>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment