他の可能性に加えpreg_match()て、これを達成するために使用できます。あなたの質問を正しく理解できたかどうかはわかりませんが、役立つ例を用意しました。元の配列を次の構造を持つ配列に変換します。
array(
  array('key', 'operator', 'value'),
  array('key', 'operator', 'value'),
  array('key', 'operator', 'value'),
  // ...
)
コードは次のとおりです。
$arr = array('username='=> 'Alex','id >'=>'4');
$result = extractValues($arr);
var_dump($result);
function extractValues($arr) {
    $pattern  = '/([A-Za-z_]+[A-Za-z_0-9]?)[ ]?(!=|=|<=|<|>=|';
    $pattern .= '>|like|clike|slike|not|is|in|between|and|or)/';
    $result = array();
    foreach($arr as $key => $value) {
        preg_match($pattern, $key, $matches);
        $result []= array($matches[1], $matches[2], $value);
    }
    return $result;
}
出力は次のとおりです。
array(2) {
  [0] =>
  array(3) {
    [0] =>
    string(8) "username"
    [1] =>
    string(1) "="
    [2] =>
    string(4) "Alex"
  }
  [1] =>
  array(3) {
    [0] =>
    string(2) "id"
    [1] =>
    string(1) ">"
    [2] =>
    string(1) "4"
  }
}