コード例 #1
0
 public function Parse()
 {
     if ($this->BugReport == NULL) {
         return false;
     }
     $tokenizer = new StringTokenizer($this->BugReport, "</>");
     if (!$tokenizer->HasNextToken()) {
         return false;
     }
     $key = 0;
     $value = NULL;
     $intag = false;
     while ($tokenizer->HasNextToken()) {
         $i = 0;
         if ($intag == false) {
             $key = $tokenizer->GetNextToken();
             if (!is_numeric($key)) {
                 return false;
             }
             $intag = true;
         } else {
             if ($value == NULL) {
                 $value = $tokenizer->GetNextToken();
             } else {
                 $i = $tokenizer->GetNextToken();
                 if (is_numeric($i) && $i == $key) {
                     $this->Data[$key] = $value;
                     $intag = false;
                     $value = NULL;
                     $key = 0;
                     $i = 0;
                 } else {
                     return false;
                 }
             }
         }
     }
     return true;
 }
コード例 #2
0
 public function Parse()
 {
     if ($this->BugReport == NULL) {
         return false;
     }
     $tokenizer = new StringTokenizer($this->BugReport, ":\t\n");
     if (!$tokenizer->HasNextToken()) {
         return false;
     }
     $key = 0;
     $value = NULL;
     $count = 0;
     while ($tokenizer->HasNextToken()) {
         $token = $tokenizer->GetNextToken();
         if ($count % 2 != 0) {
             $value = $token;
             $this->Data[$key] = $value;
         } else {
             $key = $token;
         }
         $count++;
     }
     return true;
 }