Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.11.x will end 14 Nov 2022 (12 months plus 6 months extension).
  • Bug fixes for security issues in 3.11.x will end 13 Nov 2023 (18 months plus 12 months extension).
  • PHP version: minimum PHP 7.3.0 Note: minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is supported too.

Differences Between: [Versions 310 and 311] [Versions 39 and 311]

(no description)

File Size: 190 lines (7 kb)
Included or required:0 times
Referenced: 0 times
Includes or requires: 0 files

Defines 1 class


Class: XLSX  - X-Ref

Class XLSX
Provides functions to escape and unescape data for XLSX files

initIfNeeded()   X-Ref
Initializes the control characters if not already done


escape($string)   X-Ref
Escapes the given string to make it compatible with XLSX

param: string $string The string to escape
return: string The escaped string

unescape($string)   X-Ref
Unescapes the given string to make it compatible with XLSX

param: string $string The string to unescape
return: string The unescaped string

getEscapableControlCharactersPattern()   X-Ref

return: string Regex pattern containing all escapable control characters

getControlCharactersEscapingMap()   X-Ref
Builds the map containing control characters to be escaped
mapped to their escaped values.
"\t", "\r" and "\n" don't need to be escaped.

NOTE: the logic has been adapted from the XlsxWriter library (BSD License)
return: string[]

escapeControlCharacters($string)   X-Ref
Converts PHP control characters from the given string to OpenXML escaped control characters

Excel escapes control characters with _xHHHH_ and also escapes any
literal strings of that type by encoding the leading underscore.
So "\0" -> _x0000_ and "_x0000_" -> _x005F_x0000_.

NOTE: the logic has been adapted from the XlsxWriter library (BSD License)
param: string $string String to escape
return: string

escapeEscapeCharacter($string)   X-Ref
Escapes the escape character: "_x0000_" -> "_x005F_x0000_"

param: string $string String to escape
return: string The escaped string

unescapeControlCharacters($string)   X-Ref
Converts OpenXML escaped control characters from the given string to PHP control characters

Excel escapes control characters with _xHHHH_ and also escapes any
literal strings of that type by encoding the leading underscore.
So "_x0000_" -> "\0" and "_x005F_x0000_" -> "_x0000_"

NOTE: the logic has been adapted from the XlsxWriter library (BSD License)
param: string $string String to unescape
return: string

unescapeEscapeCharacter($string)   X-Ref
Unecapes the escape character: "_x005F_x0000_" => "_x0000_"

param: string $string String to unescape
return: string The unescaped string