/**
  * Return a query with the parameters replaced
  *
  * @param string $query
  * @param array  $parameters
  *
  * @return string
  */
 public function replaceQueryParameters($query, array $parameters)
 {
     $i = 0;
     $result = preg_replace_callback('/\\?|((?<!:):[a-z0-9_]+)/i', function ($matches) use($parameters, &$i) {
         $key = substr($matches[0], 1);
         if (!array_key_exists($i, $parameters) && (false === $key || !array_key_exists($key, $parameters))) {
             return $matches[0];
         }
         $value = array_key_exists($i, $parameters) ? $parameters[$i] : $parameters[$key];
         $result = DoctrineExtension::escapeFunction($value);
         $i++;
         return $result;
     }, $query);
     return $result;
 }
Exemple #2
0
 /**
  * Return a query with the parameters replaced
  *
  * @param string $query
  * @param array  $parameters
  * @param bool   $highlight
  *
  * @return string
  */
 public function replaceQueryParameters($query, array $parameters, $highlight = true)
 {
     $i = 0;
     $result = preg_replace_callback('/\\?|((?<!:):[a-z0-9_]+)/i', function ($matches) use($parameters, &$i) {
         $key = substr($matches[0], 1);
         if (!array_key_exists($i, $parameters) && (false === $key || !array_key_exists($key, $parameters))) {
             return $matches[0];
         }
         $value = array_key_exists($i, $parameters) ? $parameters[$i] : $parameters[$key];
         $result = DoctrineExtension::escapeFunction($value);
         $i++;
         return $result;
     }, $query);
     if ($highlight) {
         $result = \SqlFormatter::highlight($result);
         $result = str_replace(array('<pre ', '</pre>'), array('<span ', '</span>'), $result);
     }
     return $result;
 }
 /**
  * Return a query with the parameters replaced
  *
  * @param string $query
  * @param array  $parameters
  *
  * @return string
  */
 public function replaceQueryParameters($query, $parameters)
 {
     $i = 0;
     $result = preg_replace_callback('/\\?|(:[a-z0-9_]+)/i', function ($matches) use($parameters, &$i) {
         $key = substr($matches[0], 1);
         if (!isset($parameters[$i]) && !isset($parameters[$key])) {
             return $matches[0];
         }
         $value = isset($parameters[$i]) ? $parameters[$i] : $parameters[$key];
         $result = DoctrineExtension::escapeFunction($value);
         $i++;
         return $result;
     }, $query);
     $result = \SqlFormatter::highlight($result);
     $result = str_replace(array("<pre ", "</pre>"), array("<span ", "</span>"), $result);
     return $result;
 }