Пример #1
0
 /**
  * 
  * 获取文本节点
  */
 public function getTextToken($char)
 {
     /*if (! isset ( $this->text {$this->pos + 1} )) {
     			return false;
     		}*/
     $next = $this->text[$this->pos + 1];
     $renext = $this->text[$this->pos + 2];
     /*
      * return when next token is tpl
      */
     if ($this->hasTplToken && $this->ld === substr($this->text, $this->pos + 1, strlen($this->ld))) {
         return false;
     }
     /*
      * 如果下一个字符是“<”, 并且下下个字符不是<
      * 需要兼容<div>welefen<<</div>这样的情况
      * Chrome下: 对于<div>welefen< 会被解析成<div>welefen, 最后的<字符会被忽略
      */
     if ($next === Fl_Html_Static::LEFT && $renext !== Fl_Html_Static::LEFT && Fl_Html_Static::isTagFirstChar($renext)) {
         return false;
     }
 }
Пример #2
0
 /**
  * 
  * 获取文本节点
  */
 public function getTextToken($char)
 {
     $next = $this->getPosChar($this->pos + 1);
     $renext = $this->getPosChar($this->pos + 2);
     if ($next === false) {
         return false;
     }
     /*
      * 如果下一个是模板语法的token,则返回
      * 这里用find有严重的性能问题,故直接使用substr比较
      */
     if ($this->ld && $this->ld === substr($this->text, $this->pos + 1, strlen($this->ld))) {
         return false;
     }
     /*
      * 如果下一个字符是“<”, 并且下下个字符不是<
      * 需要兼容<div>welefen<<</div>这样的情况
      * Chrome下: 对于<div>welefen< 会被解析成<div>welefen, 最后的<字符会被忽略
      */
     if ($next === Fl_Html_Static::LEFT && $renext !== Fl_Html_Static::LEFT && Fl_Html_Static::isTagFirstChar($renext)) {
         return false;
     }
 }