Laravel Builder SQL with binding


Ако ви се е случвало да искате да видите изцяло “попълнена” заявката от Eloquent builder-а и са ви дразнили bindings… ето това е лесно решение 🙂

namespace App\Helpers;

use Illuminate\Database\Eloquent\Builder;

class Helper {

  /**
   * @param Builder $query
   *
   * @return string
   */
  public static function getSqlWithBinding(Builder $query): string {
    $sql = $query->toSql();

    foreach ($query->getBindings() as $binding) {
      $value = is_numeric($binding) ? $binding : '\'' . $binding . '\'';
      $sql = preg_replace('/\?/', $value, $sql, 1);
    }

    return $sql;
  }
}

 


2 responses to “Laravel Builder SQL with binding”

Leave a Reply

Your email address will not be published. Required fields are marked *