PKPString::init PHP Method

init() static public method

Perform initialization required for the string wrapper library.
static public init ( ) : null
return null
    static function init()
    {
        $clientCharset = strtolower_codesafe(Config::getVar('i18n', 'client_charset'));
        // Check if mbstring is installed (requires PHP >= 4.3.0)
        if (self::hasMBString()) {
            // mbstring routines are available
            define('ENABLE_MBSTRING', true);
            // Set up required ini settings for mbstring
            // FIXME Do any other mbstring settings need to be set?
            mb_internal_encoding($clientCharset);
            mb_substitute_character('63');
            // question mark
        }
        // Define modifier to be used in regexp_* routines
        // FIXME Should non-UTF-8 encodings be supported with mbstring?
        if ($clientCharset == 'utf-8' && self::hasPCREUTF8()) {
            define('PCRE_UTF8', 'u');
        } else {
            define('PCRE_UTF8', '');
        }
    }

Usage Example

Esempio n. 1
0
 /**
  * Constructor
  */
 function PKPApplication()
 {
     // Seed random number generator
     mt_srand((double) microtime() * 1000000);
     import('lib.pkp.classes.core.Core');
     import('lib.pkp.classes.core.PKPString');
     import('lib.pkp.classes.core.Registry');
     import('lib.pkp.classes.config.Config');
     ini_set('display_errors', Config::getVar('debug', 'display_errors', ini_get('display_errors')));
     Registry::set('application', $this);
     import('lib.pkp.classes.db.DAORegistry');
     import('lib.pkp.classes.db.XMLDAO');
     import('lib.pkp.classes.cache.CacheManager');
     import('classes.security.RoleDAO');
     import('lib.pkp.classes.security.Validation');
     import('lib.pkp.classes.session.SessionManager');
     import('classes.template.TemplateManager');
     import('classes.notification.NotificationManager');
     import('lib.pkp.classes.statistics.PKPStatisticsHelper');
     import('lib.pkp.classes.plugins.PluginRegistry');
     import('lib.pkp.classes.plugins.HookRegistry');
     import('classes.i18n.AppLocale');
     PKPString::init();
     $microTime = Core::microtime();
     Registry::set('system.debug.startTime', $microTime);
     $notes = array();
     Registry::set('system.debug.notes', $notes);
     if (Config::getVar('general', 'installed')) {
         // Initialize database connection
         $conn = DBConnection::getInstance();
         if (!$conn->isConnected()) {
             if (Config::getVar('database', 'debug')) {
                 $dbconn =& $conn->getDBConn();
                 fatalError('Database connection failed: ' . $dbconn->errorMsg());
             } else {
                 fatalError('Database connection failed!');
             }
         }
     }
 }