PHPize Online / SQLize Online  /  SQLtest Online

A A A
Share      Blog   Popular
Copy Format Clear
Copy Clear
Copy Format Clear
<?php $func_id = 'AibolitHelpers::myCheckSum'; $sigs = array(); #$sigs[0] = '(eval|system|exec)cat'; #$sigs[1] = '(eval|system|exec)dog'; #$sigs[2] = 'qwerty'; $sigs[0] = 'xxx13412342212312312123123123123123123212312312312312123123123441234123412123123123312341223412312341234121234123412312341234123412312341123412341231234123414123412312341223412312341234121234123412312341234123412312341123412341231234123412341231234122341231234123412123412341231234123412341231234112341234123123412341231234123441234123412312341223412312341234121234123412312341234123412312341123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341231234123412341123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341223412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234123123412341234112312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123412312341234123423123412341234123123412341234123123412341234'; $sigs[1] = 'xxx999'; $txt = implode("\n", $sigs); $tmp = array(); for ($i = 24; $i >= 1; ($i > 4) ? $i -= 4 : --$i) { $txt = preg_replace_callback('#^((?>(?:\\\\.|\\[.+?\\]|[^(\n]|\((?:\\\\.|[^)(\n])++\))(?:[*?+]\+?|\{\d+(?:,\d*)?\}[+?]?|)){' . $i . ',})[^\n]*+(?:\\n\\1(?![{?*+]).+)+#im', 'optMergePrefixes', $txt); } $sigs = array_merge(explode("\n", $txt), $tmp); var_dump($sigs); function optMergePrefixes($m) { $limit = 8000; $prefix = $m[1]; $prefix_len = strlen($prefix); $len = $prefix_len; $r = []; $suffixes = []; foreach (explode("\n", $m[0]) as $line) { if (strlen($line) > $limit) { $r[] = $line; continue; } $s = substr($line, $prefix_len); $len += strlen($s); print ($len."\n"); if ($len > $limit) { var_dump($suffixes); die(); if (count($suffixes) == 1) { $r[] = $prefix . $suffixes[0]; } else { $r[] = $prefix . '(?:' . implode('|', $suffixes) . ')'; } $suffixes = []; $len = $prefix_len + strlen($s); } $suffixes[] = $s; } if (!empty($suffixes)) { if (count($suffixes) == 1) { $r[] = $prefix . $suffixes[0]; } else { $r[] = $prefix . '(?:' . implode('|', $suffixes) . ')'; } } return implode("\n", $r); }
Show:  
Copy Clear