From: x2003bruneau Date: Sat, 12 Aug 2006 23:03:36 +0000 (+0000) Subject: Simplification X-Git-Tag: xorg/0.9.11~106 X-Git-Url: http://git.polytechnique.org/?a=commitdiff_plain;ds=inline;h=d3c52d3044db7080cb9226ee1bf55a1409b924e2;p=platal.git Simplification git-svn-id: svn+ssh://murphy/home/svn/platal/trunk@809 839d8a87-29fc-0310-9880-83ba4fa771e5 --- diff --git a/classes/XDB.php b/classes/XDB.php index 5e07bc2..edcbed6 100644 --- a/classes/XDB.php +++ b/classes/XDB.php @@ -38,20 +38,19 @@ class XDB { $query = preg_split("/\n\\s*/", $query); $length = 0; - foreach ($query as $line) { - if (preg_match('/^([A-Z]+(?: +(?:JOIN|BY))?) /', $line, $matches) + foreach ($query as $key=>$line) { + $local = -2; + if (preg_match('/^([A-Z]+(?:\s+(?:JOIN|BY))?)\s+(.*)/', $line, $matches) && $matches[1] != 'AND' && $matches[1] != 'OR') { - $length = max($length, strlen($matches[1])); + $local = strlen($matches[1]); + $line = $matches[1] . ' ' . $matches[2]; + $length = max($length, $local); } + $query[$key] = array($line, $local); } $res = ''; - foreach ($query as $line) { - $local = -2; - if (preg_match('/^([A-Z]+(?: +(?:JOIN|BY))?) +(.*)/', $line, $matches) - && $matches[1] != 'AND' && $matches[1] != 'OR') { - $local = strlen($matches[1]); - $line = $matches[1] . ' ' . $matches[2]; - } + foreach ($query as $array) { + list($line, $local) = $array; $local = $length - $local; $res .= str_repeat(' ', $local) . $line . "\n"; $length += 2 * (substr_count($line, '(') - substr_count($line, ')'));