| Zeile 4... |
Zeile 4... |
| 4 |
*
|
4 |
*
|
| 5 |
* An open source application development framework for PHP
|
5 |
* An open source application development framework for PHP
|
| 6 |
*
|
6 |
*
|
| 7 |
* This content is released under the MIT License (MIT)
|
7 |
* This content is released under the MIT License (MIT)
|
| 8 |
*
|
8 |
*
|
| 9 |
* Copyright (c) 2014 - 2017, British Columbia Institute of Technology
|
9 |
* Copyright (c) 2014 - 2018, British Columbia Institute of Technology
|
| 10 |
*
|
10 |
*
|
| 11 |
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
11 |
* Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 12 |
* of this software and associated documentation files (the "Software"), to deal
|
12 |
* of this software and associated documentation files (the "Software"), to deal
|
| 13 |
* in the Software without restriction, including without limitation the rights
|
13 |
* in the Software without restriction, including without limitation the rights
|
| 14 |
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
14 |
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| Zeile 27... |
Zeile 27... |
| 27 |
* THE SOFTWARE.
|
27 |
* THE SOFTWARE.
|
| 28 |
*
|
28 |
*
|
| 29 |
* @package CodeIgniter
|
29 |
* @package CodeIgniter
|
| 30 |
* @author EllisLab Dev Team
|
30 |
* @author EllisLab Dev Team
|
| 31 |
* @copyright Copyright (c) 2008 - 2014, EllisLab, Inc. (https://ellislab.com/)
|
31 |
* @copyright Copyright (c) 2008 - 2014, EllisLab, Inc. (https://ellislab.com/)
|
| 32 |
* @copyright Copyright (c) 2014 - 2017, British Columbia Institute of Technology (http://bcit.ca/)
|
32 |
* @copyright Copyright (c) 2014 - 2018, British Columbia Institute of Technology (http://bcit.ca/)
|
| 33 |
* @license http://opensource.org/licenses/MIT MIT License
|
33 |
* @license http://opensource.org/licenses/MIT MIT License
|
| 34 |
* @link https://codeigniter.com
|
34 |
* @link https://codeigniter.com
|
| 35 |
* @since Version 1.0.0
|
35 |
* @since Version 1.0.0
|
| 36 |
* @filesource
|
36 |
* @filesource
|
| 37 |
*/
|
37 |
*/
|
| Zeile 1924... |
Zeile 1924... |
| 1924 |
if ($field_exists === FALSE)
|
1924 |
if ($field_exists === FALSE)
|
| 1925 |
{
|
1925 |
{
|
| 1926 |
$i++;
|
1926 |
$i++;
|
| 1927 |
}
|
1927 |
}
|
| Zeile -... |
Zeile 1928... |
| - |
|
1928 |
|
| - |
|
1929 |
// dbprefix may've already been applied, with or without the identifier escaped
|
| - |
|
1930 |
$ec = '(?<ec>'.preg_quote(is_array($this->_escape_char) ? $this->_escape_char[0] : $this->_escape_char).')?';
|
| - |
|
1931 |
isset($ec[0]) && $ec .= '?'; // Just in case someone has disabled escaping by forcing an empty escape character
|
| 1928 |
|
1932 |
|
| 1929 |
// Verify table prefix and replace if necessary
|
1933 |
// Verify table prefix and replace if necessary
|
| 1930 |
if ($this->swap_pre !== '' && strpos($parts[$i], $this->swap_pre) === 0)
|
1934 |
if ($this->swap_pre !== '' && preg_match('#^'.$ec.preg_quote($this->swap_pre).'#', $parts[$i]))
|
| 1931 |
{
|
1935 |
{
|
| 1932 |
$parts[$i] = preg_replace('/^'.$this->swap_pre.'(\S+?)/', $this->dbprefix.'\\1', $parts[$i]);
|
1936 |
$parts[$i] = preg_replace('#^'.$ec.preg_quote($this->swap_pre).'(\S+?)#', '\\1'.$this->dbprefix.'\\2', $parts[$i]);
|
| 1933 |
}
|
1937 |
}
|
| 1934 |
// We only add the table prefix if it does not already exist
|
1938 |
// We only add the table prefix if it does not already exist
|
| 1935 |
elseif (strpos($parts[$i], $this->dbprefix) !== 0)
|
1939 |
else
|
| 1936 |
{
|
1940 |
{
|
| 1937 |
$parts[$i] = $this->dbprefix.$parts[$i];
|
1941 |
preg_match('#^'.$ec.preg_quote($this->dbprefix).'#', $parts[$i]) OR $parts[$i] = $this->dbprefix.$parts[$i];
|
| Zeile 1938... |
Zeile 1942... |
| 1938 |
}
|
1942 |
}
|
| 1939 |
|
1943 |
|
| 1940 |
// Put the parts back together
|
1944 |
// Put the parts back together
|