function Connection::sqlFunctionSubstringIndex

Same name and namespace in other branches
  1. 9 core/modules/sqlite/src/Driver/Database/sqlite/Connection.php \Drupal\sqlite\Driver\Database\sqlite\Connection::sqlFunctionSubstringIndex()
  2. 8.9.x core/lib/Drupal/Core/Database/Driver/sqlite/Connection.php \Drupal\Core\Database\Driver\sqlite\Connection::sqlFunctionSubstringIndex()
  3. 10 core/modules/sqlite/src/Driver/Database/sqlite/Connection.php \Drupal\sqlite\Driver\Database\sqlite\Connection::sqlFunctionSubstringIndex()

SQLite compatibility implementation for the SUBSTRING_INDEX() SQL function.

File

core/modules/sqlite/src/Driver/Database/sqlite/Connection.php, line 289

Class

Connection
SQLite implementation of <a href="/api/drupal/core%21lib%21Drupal%21Core%21Database%21Connection.php/class/Connection/11.x" title="Base Database API class." class="local">\Drupal\Core\Database\Connection</a>.

Namespace

Drupal\sqlite\Driver\Database\sqlite

Code

public static function sqlFunctionSubstringIndex($string, $delimiter, $count) {
    // If string is empty, simply return an empty string.
    if (empty($string)) {
        return '';
    }
    $end = 0;
    for ($i = 0; $i < $count; $i++) {
        $end = strpos($string, $delimiter, $end + 1);
        if ($end === FALSE) {
            $end = strlen($string);
        }
    }
    return substr($string, 0, $end);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.