public function parse_string($template, $data = array(), $return = FALSE, $options = array()) { if (!is_array($options)) { $options = array(); } $options = array_merge($this->config, $options); $ci = $this->ci; $is_mx = false; if (!$return) { list($ci, $is_mx) = $this->detect_mx(); } $options['raise_php_limits'] = !empty($options['raise_php_limits']); $parser = new CSSmin($options['raise_php_limits']); if ($options['raise_php_limits']) { if ($options['memory_limit'] != '') { $parser->set_memory_limit($options['memory_limit']); } if ($options['max_execution_time'] != '') { $parser->set_max_execution_time($options['max_execution_time']); } if ($options['pcre_backtrack_limit'] != '') { $parser->set_pcre_backtrack_limit($options['pcre_backtrack_limit']); } if ($options['pcre_recursion_limit'] != '') { $parser->set_pcre_recursion_limit($options['pcre_recursion_limit']); } } $template = $parser->run($template); return $this->output($template, $return, $ci, $is_mx); }
$_POST = stripslashes_deep($_POST); } if (!empty($_POST)) { // Require the compressor include '../cssmin.php'; // Form options parse_str($_POST['options']); $linebreak_pos = trim($linebreak_pos) != '' ? $linebreak_pos : FALSE; $raise_php = isset($raise_php) ? TRUE : FALSE; // Create a new CSSmin object and try to raise PHP settings $compressor = new CSSmin($raise_php); if ($raise_php) { $compressor->set_memory_limit($memory_limit); $compressor->set_max_execution_time($max_execution_time); $compressor->set_pcre_backtrack_limit(1000 * $pcre_backtrack_limit); $compressor->set_pcre_recursion_limit(1000 * $pcre_recursion_limit); } // Compress the CSS code and store data $output = array(); $output['css'] = $compressor->run($_POST['css'], $linebreak_pos); $output['originalSize'] = mb_strlen($_POST['css'], '8bit'); $output['compressedSize'] = mb_strlen($output['css'], '8bit'); $output['bytesSaved'] = $output['originalSize'] - $output['compressedSize']; $output['compressionRatio'] = round($output['bytesSaved'] * 100 / ($output['originalSize'] === 0 ? 1 : $output['originalSize']), 2); // Output data echo json_encode($output); } else { ?> <!DOCTYPE HTML> <html lang="en-US"> <head>