X7ROOT File Manager
Current Path:
/home/prisjneg/public_html/vendor/laravel/framework/src/Illuminate/Database
home
/
prisjneg
/
public_html
/
vendor
/
laravel
/
framework
/
src
/
Illuminate
/
Database
/
📁
..
📁
Capsule
📄
ClassMorphViolationException.php
(525 B)
📁
Concerns
📄
ConfigurationUrlParser.php
(192 B)
📄
Connection.php
(43.98 KB)
📄
ConnectionInterface.php
(3.81 KB)
📄
ConnectionResolver.php
(1.95 KB)
📄
ConnectionResolverInterface.php
(575 B)
📁
Connectors
📁
Console
📁
DBAL
📄
DatabaseManager.php
(13.96 KB)
📄
DatabaseServiceProvider.php
(3.19 KB)
📄
DatabaseTransactionRecord.php
(1.58 KB)
📄
DatabaseTransactionsManager.php
(7.75 KB)
📄
DeadlockException.php
(114 B)
📄
DetectsConcurrencyErrors.php
(1.09 KB)
📄
DetectsLostConnections.php
(3.89 KB)
📁
Eloquent
📁
Events
📄
Grammar.php
(7.13 KB)
📄
LICENSE.md
(1.05 KB)
📄
LazyLoadingViolationException.php
(771 B)
📄
LostConnectionException.php
(124 B)
📄
MigrationServiceProvider.php
(5.9 KB)
📁
Migrations
📄
MultipleColumnsSelectedException.php
(137 B)
📄
MultipleRecordsFoundException.php
(745 B)
📄
MySqlConnection.php
(4.16 KB)
📁
PDO
📄
PostgresConnection.php
(3.03 KB)
📁
Query
📄
QueryException.php
(2.08 KB)
📄
README.md
(2.16 KB)
📄
RecordsNotFoundException.php
(129 B)
📄
SQLiteConnection.php
(3.84 KB)
📄
SQLiteDatabaseDoesNotExistException.php
(565 B)
📁
Schema
📄
Seeder.php
(4.63 KB)
📄
SqlServerConnection.php
(4.12 KB)
📄
UniqueConstraintViolationException.php
(107 B)
📄
composer.json
(1.81 KB)
Editing: Grammar.php
<?php namespace Illuminate\Database; use Illuminate\Contracts\Database\Query\Expression; use Illuminate\Support\Traits\Macroable; use RuntimeException; abstract class Grammar { use Macroable; /** * The connection used for escaping values. * * @var \Illuminate\Database\Connection */ protected $connection; /** * The grammar table prefix. * * @var string */ protected $tablePrefix = ''; /** * Wrap an array of values. * * @param array $values * @return array */ public function wrapArray(array $values) { return array_map([$this, 'wrap'], $values); } /** * Wrap a table in keyword identifiers. * * @param \Illuminate\Contracts\Database\Query\Expression|string $table * @return string */ public function wrapTable($table) { if (! $this->isExpression($table)) { return $this->wrap($this->tablePrefix.$table, true); } return $this->getValue($table); } /** * Wrap a value in keyword identifiers. * * @param \Illuminate\Contracts\Database\Query\Expression|string $value * @param bool $prefixAlias * @return string */ public function wrap($value, $prefixAlias = false) { if ($this->isExpression($value)) { return $this->getValue($value); } // If the value being wrapped has a column alias we will need to separate out // the pieces so we can wrap each of the segments of the expression on its // own, and then join these both back together using the "as" connector. if (stripos($value, ' as ') !== false) { return $this->wrapAliasedValue($value, $prefixAlias); } // If the given value is a JSON selector we will wrap it differently than a // traditional value. We will need to split this path and wrap each part // wrapped, etc. Otherwise, we will simply wrap the value as a string. if ($this->isJsonSelector($value)) { return $this->wrapJsonSelector($value); } return $this->wrapSegments(explode('.', $value)); } /** * Wrap a value that has an alias. * * @param string $value * @param bool $prefixAlias * @return string */ protected function wrapAliasedValue($value, $prefixAlias = false) { $segments = preg_split('/\s+as\s+/i', $value); // If we are wrapping a table we need to prefix the alias with the table prefix // as well in order to generate proper syntax. If this is a column of course // no prefix is necessary. The condition will be true when from wrapTable. if ($prefixAlias) { $segments[1] = $this->tablePrefix.$segments[1]; } return $this->wrap($segments[0]).' as '.$this->wrapValue($segments[1]); } /** * Wrap the given value segments. * * @param array $segments * @return string */ protected function wrapSegments($segments) { return collect($segments)->map(function ($segment, $key) use ($segments) { return $key == 0 && count($segments) > 1 ? $this->wrapTable($segment) : $this->wrapValue($segment); })->implode('.'); } /** * Wrap a single string in keyword identifiers. * * @param string $value * @return string */ protected function wrapValue($value) { if ($value !== '*') { return '"'.str_replace('"', '""', $value).'"'; } return $value; } /** * Wrap the given JSON selector. * * @param string $value * @return string * * @throws \RuntimeException */ protected function wrapJsonSelector($value) { throw new RuntimeException('This database engine does not support JSON operations.'); } /** * Determine if the given string is a JSON selector. * * @param string $value * @return bool */ protected function isJsonSelector($value) { return str_contains($value, '->'); } /** * Convert an array of column names into a delimited string. * * @param array $columns * @return string */ public function columnize(array $columns) { return implode(', ', array_map([$this, 'wrap'], $columns)); } /** * Create query parameter place-holders for an array. * * @param array $values * @return string */ public function parameterize(array $values) { return implode(', ', array_map([$this, 'parameter'], $values)); } /** * Get the appropriate query parameter place-holder for a value. * * @param mixed $value * @return string */ public function parameter($value) { return $this->isExpression($value) ? $this->getValue($value) : '?'; } /** * Quote the given string literal. * * @param string|array $value * @return string */ public function quoteString($value) { if (is_array($value)) { return implode(', ', array_map([$this, __FUNCTION__], $value)); } return "'$value'"; } /** * Escapes a value for safe SQL embedding. * * @param string|float|int|bool|null $value * @param bool $binary * @return string */ public function escape($value, $binary = false) { if (is_null($this->connection)) { throw new RuntimeException("The database driver's grammar implementation does not support escaping values."); } return $this->connection->escape($value, $binary); } /** * Determine if the given value is a raw expression. * * @param mixed $value * @return bool */ public function isExpression($value) { return $value instanceof Expression; } /** * Transforms expressions to their scalar types. * * @param \Illuminate\Contracts\Database\Query\Expression|string|int|float $expression * @return string|int|float */ public function getValue($expression) { if ($this->isExpression($expression)) { return $this->getValue($expression->getValue($this)); } return $expression; } /** * Get the format for database stored dates. * * @return string */ public function getDateFormat() { return 'Y-m-d H:i:s'; } /** * Get the grammar's table prefix. * * @return string */ public function getTablePrefix() { return $this->tablePrefix; } /** * Set the grammar's table prefix. * * @param string $prefix * @return $this */ public function setTablePrefix($prefix) { $this->tablePrefix = $prefix; return $this; } /** * Set the grammar's database connection. * * @param \Illuminate\Database\Connection $connection * @return $this */ public function setConnection($connection) { $this->connection = $connection; return $this; } }
Upload File
Create Folder