From f0bdd46b6d680985cd448b89aad6836af6150f84 Mon Sep 17 00:00:00 2001
From: raortegar <raquel.ortega@moodle.com>
Date: Tue, 31 Jan 2023 14:37:34 +0100
Subject: [PATCH] Fixed PHP 8.2 utf8_encode deprecated in Charset.php

---
 src/Helper/Charset.php | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/Helper/Charset.php b/src/Helper/Charset.php
index d683140e..447eaa0b 100644
--- a/src/Helper/Charset.php
+++ b/src/Helper/Charset.php
@@ -253,7 +253,11 @@ class Charset
             case 'ISO-8859-1_UTF-8':
                 $escapedData = str_replace(array('&', '"', "'", '<', '>'), array('&amp;', '&quot;', '&apos;', '&lt;', '&gt;'), $data);
                 /// @todo if on php >= 8.2, prefer using mbstring or iconv. Also: suppress the warning!
-                $escapedData = utf8_encode($escapedData);
+                if (function_exists('mb_convert_encoding')) {
+                        $escapedData = mb_convert_encoding($escapedData, 'UTF-8', 'ISO-8859-1');
+                } else {
+                    $escapedData = utf8_encode($escapedData);
+                }
                 break;
 
             case 'ISO-8859-1_US-ASCII':
-- 
2.47.0