Exemple #1
0
 function __toString()
 {
     $mapimplode = _Array::recursiveMerge()->map(function ($e) {
         return $e . '';
     })->implode('');
     $elem = TagNode::element($this->name, $this->attributes);
     return '' . $elem($mapimplode($this->content));
 }
Exemple #2
0
 /**
  * @param array ...$data
  * @return string
  */
 public function __invoke(...$data)
 {
     $attNode = TagNode::attributes();
     return "<" . $this->name . $attNode($this->attributes) . ">" . $data[0] . "</" . $this->name . ">";
 }
Exemple #3
0
 public function testTag()
 {
     $l1 = new Tag('li', ['class' => 'le li'], ['aaa']);
     $l2 = new Tag('li', ['class' => 'le'], ['aaa']);
     $data = new Tag('ul', ['class' => 'ul'], [$l1, $l2]);
     $ul = TagNode::tag();
     $this->assertEquals($ul($data), '<ul class="ul"><li class="le li">aaa</li><li class="le">aaa</li></ul>');
 }