phpmultidimensional-arrayutf-8fontsassociative-array

How to dynamically convert a string into (and revert from) UTF8 special font characters?


How to dynamically convert a string into (and revert from) UTF8 special font characters "on-the-fly" using PHP functions?

For example,

echo cvtIntoSpclUTF8FntChars('script', 'Hello, World!');

becomesโ€ฆ

โ„‹โ„ฏ๐“๐“โ„ด, ๐’ฒโ„ด๐“‡๐“๐’น!

and...

echo rvtFromSpclUTF8FntChars('โ„‹โ„ฏ๐“๐“โ„ด, ๐’ฒโ„ด๐“‡๐“๐’น!');

becomes...

Hello, World!

Solution

  • This is my solution.

    <?php
    
    /* 2 global arrays used to convert a string to and from special UTF8 font characters. [BEGIN] */
    
    $utf8_norm_fnt_char_arr = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"];
    
    $utf8_spcl_fnt_type_arr = array 
        (
            'serifBold' => ['๐š', '๐›', '๐œ', '๐', '๐ž', '๐Ÿ', '๐ ', '๐ก', '๐ข', '๐ฃ', '๐ค', '๐ฅ', '๐ฆ', '๐ง', '๐จ', '๐ฉ', '๐ช', '๐ซ', '๐ฌ', '๐ญ', '๐ฎ', '๐ฏ', '๐ฐ', '๐ฑ', '๐ฒ', '๐ณ', '๐€', '๐', '๐‚', '๐ƒ', '๐„', '๐…', '๐†', '๐‡', '๐ˆ', '๐‰', '๐Š', '๐‹', '๐Œ', '๐', '๐Ž', '๐', '๐', '๐‘', '๐’', '๐“', '๐”', '๐•', '๐–', '๐—', '๐˜', '๐™', '๐ŸŽ', '๐Ÿ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', '๐Ÿ–', '๐Ÿ—', 'โ—', 'โ“', '.', ',', '"', "'"],
            'serifItalic' => ['๐‘Ž', '๐‘', '๐‘', '๐‘‘', '๐‘’', '๐‘“', '๐‘”', 'โ„Ž', '๐‘–', '๐‘—', '๐‘˜', '๐‘™', '๐‘š', '๐‘›', '๐‘œ', '๐‘', '๐‘ž', '๐‘Ÿ', '๐‘ ', '๐‘ก', '๐‘ข', '๐‘ฃ', '๐‘ค', '๐‘ฅ', '๐‘ฆ', '๐‘ง', '๐ด', '๐ต', '๐ถ', '๐ท', '๐ธ', '๐น', '๐บ', '๐ป', '๐ผ', '๐ฝ', '๐พ', '๐ฟ', '๐‘€', '๐‘', '๐‘‚', '๐‘ƒ', '๐‘„', '๐‘…', '๐‘†', '๐‘‡', '๐‘ˆ', '๐‘‰', '๐‘Š', '๐‘‹', '๐‘Œ', '๐‘', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'serifBoldItalic' => ['๐’‚', '๐’ƒ', '๐’„', '๐’…', '๐’†', '๐’‡', '๐’ˆ', '๐’‰', '๐’Š', '๐’‹', '๐’Œ', '๐’', '๐’Ž', '๐’', '๐’', '๐’‘', '๐’’', '๐’“', '๐’”', '๐’•', '๐’–', '๐’—', '๐’˜', '๐’™', '๐’š', '๐’›', '๐‘จ', '๐‘ฉ', '๐‘ช', '๐‘ซ', '๐‘ฌ', '๐‘ญ', '๐‘ฎ', '๐‘ฏ', '๐‘ฐ', '๐‘ฑ', '๐‘ฒ', '๐‘ณ', '๐‘ด', '๐‘ต', '๐‘ถ', '๐‘ท', '๐‘ธ', '๐‘น', '๐‘บ', '๐‘ป', '๐‘ผ', '๐‘ฝ', '๐‘พ', '๐‘ฟ', '๐’€', '๐’', '๐ŸŽ', '๐Ÿ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', '๐Ÿ–', '๐Ÿ—', 'โ—', 'โ“', '.', ',', '"', "'"],
            'sans' => ['๐–บ', '๐–ป', '๐–ผ', '๐–ฝ', '๐–พ', '๐–ฟ', '๐—€', '๐—', '๐—‚', '๐—ƒ', '๐—„', '๐—…', '๐—†', '๐—‡', '๐—ˆ', '๐—‰', '๐—Š', '๐—‹', '๐—Œ', '๐—', '๐—Ž', '๐—', '๐—', '๐—‘', '๐—’', '๐—“', '๐– ', '๐–ก', '๐–ข', '๐–ฃ', '๐–ค', '๐–ฅ', '๐–ฆ', '๐–ง', '๐–จ', '๐–ฉ', '๐–ช', '๐–ซ', '๐–ฌ', '๐–ญ', '๐–ฎ', '๐–ฏ', '๐–ฐ', '๐–ฑ', '๐–ฒ', '๐–ณ', '๐–ด', '๐–ต', '๐–ถ', '๐–ท', '๐–ธ', '๐–น', '๐Ÿข', '๐Ÿฃ', '๐Ÿค', '๐Ÿฅ', '๐Ÿฆ', '๐Ÿง', '๐Ÿจ', '๐Ÿฉ', '๐Ÿช', '๐Ÿซ', '!', '?', '.', ',', '"', "'"],
            'sansBold' => ['๐—ฎ', '๐—ฏ', '๐—ฐ', '๐—ฑ', '๐—ฒ', '๐—ณ', '๐—ด', '๐—ต', '๐—ถ', '๐—ท', '๐—ธ', '๐—น', '๐—บ', '๐—ป', '๐—ผ', '๐—ฝ', '๐—พ', '๐—ฟ', '๐˜€', '๐˜', '๐˜‚', '๐˜ƒ', '๐˜„', '๐˜…', '๐˜†', '๐˜‡', '๐—”', '๐—•', '๐—–', '๐——', '๐—˜', '๐—™', '๐—š', '๐—›', '๐—œ', '๐—', '๐—ž', '๐—Ÿ', '๐— ', '๐—ก', '๐—ข', '๐—ฃ', '๐—ค', '๐—ฅ', '๐—ฆ', '๐—ง', '๐—จ', '๐—ฉ', '๐—ช', '๐—ซ', '๐—ฌ', '๐—ญ', '๐Ÿฌ', '๐Ÿญ', '๐Ÿฎ', '๐Ÿฏ', '๐Ÿฐ', '๐Ÿฑ', '๐Ÿฒ', '๐Ÿณ', '๐Ÿด', '๐Ÿต', 'โ—', 'โ“', '.', ',', '"', "'"],
            'sansItalic' => ['๐˜ข', '๐˜ฃ', '๐˜ค', '๐˜ฅ', '๐˜ฆ', '๐˜ง', '๐˜จ', '๐˜ฉ', '๐˜ช', '๐˜ซ', '๐˜ฌ', '๐˜ญ', '๐˜ฎ', '๐˜ฏ', '๐˜ฐ', '๐˜ฑ', '๐˜ฒ', '๐˜ณ', '๐˜ด', '๐˜ต', '๐˜ถ', '๐˜ท', '๐˜ธ', '๐˜น', '๐˜บ', '๐˜ป', '๐˜ˆ', '๐˜‰', '๐˜Š', '๐˜‹', '๐˜Œ', '๐˜', '๐˜Ž', '๐˜', '๐˜', '๐˜‘', '๐˜’', '๐˜“', '๐˜”', '๐˜•', '๐˜–', '๐˜—', '๐˜˜', '๐˜™', '๐˜š', '๐˜›', '๐˜œ', '๐˜', '๐˜ž', '๐˜Ÿ', '๐˜ ', '๐˜ก', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'sansBoldItalic' => ['๐™–', '๐™—', '๐™˜', '๐™™', '๐™š', '๐™›', '๐™œ', '๐™', '๐™ž', '๐™Ÿ', '๐™ ', '๐™ก', '๐™ข', '๐™ฃ', '๐™ค', '๐™ฅ', '๐™ฆ', '๐™ง', '๐™จ', '๐™ฉ', '๐™ช', '๐™ซ', '๐™ฌ', '๐™ญ', '๐™ฎ', '๐™ฏ', '๐˜ผ', '๐˜ฝ', '๐˜พ', '๐˜ฟ', '๐™€', '๐™', '๐™‚', '๐™ƒ', '๐™„', '๐™…', '๐™†', '๐™‡', '๐™ˆ', '๐™‰', '๐™Š', '๐™‹', '๐™Œ', '๐™', '๐™Ž', '๐™', '๐™', '๐™‘', '๐™’', '๐™“', '๐™”', '๐™•', '๐ŸŽ', '๐Ÿ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', '๐Ÿ–', '๐Ÿ—', 'โ—', 'โ“', '.', ',', '"', "'"],
            'script' => ['๐’ถ', '๐’ท', '๐’ธ', '๐’น', 'โ„ฏ', '๐’ป', 'โ„Š', '๐’ฝ', '๐’พ', '๐’ฟ', '๐“€', '๐“', '๐“‚', '๐“ƒ', 'โ„ด', '๐“…', '๐“†', '๐“‡', '๐“ˆ', '๐“‰', '๐“Š', '๐“‹', '๐“Œ', '๐“', '๐“Ž', '๐“', '๐’œ', 'โ„ฌ', '๐’ž', '๐’Ÿ', 'โ„ฐ', 'โ„ฑ', '๐’ข', 'โ„‹', 'โ„', '๐’ฅ', '๐’ฆ', 'โ„’', 'โ„ณ', '๐’ฉ', '๐’ช', '๐’ซ', '๐’ฌ', 'โ„›', '๐’ฎ', '๐’ฏ', '๐’ฐ', '๐’ฑ', '๐’ฒ', '๐’ณ', '๐’ด', '๐’ต', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'scriptBold' => ['๐“ช', '๐“ซ', '๐“ฌ', '๐“ญ', '๐“ฎ', '๐“ฏ', '๐“ฐ', '๐“ฑ', '๐“ฒ', '๐“ณ', '๐“ด', '๐“ต', '๐“ถ', '๐“ท', '๐“ธ', '๐“น', '๐“บ', '๐“ป', '๐“ผ', '๐“ฝ', '๐“พ', '๐“ฟ', '๐”€', '๐”', '๐”‚', '๐”ƒ', '๐“', '๐“‘', '๐“’', '๐““', '๐“”', '๐“•', '๐“–', '๐“—', '๐“˜', '๐“™', '๐“š', '๐“›', '๐“œ', '๐“', '๐“ž', '๐“Ÿ', '๐“ ', '๐“ก', '๐“ข', '๐“ฃ', '๐“ค', '๐“ฅ', '๐“ฆ', '๐“ง', '๐“จ', '๐“ฉ', '๐ŸŽ', '๐Ÿ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', '๐Ÿ–', '๐Ÿ—', 'โ—', 'โ“', '.', ',', '"', "'"],
            'fraktur' => ['๐”ž', '๐”Ÿ', '๐” ', '๐”ก', '๐”ข', '๐”ฃ', '๐”ค', '๐”ฅ', '๐”ฆ', '๐”ง', '๐”จ', '๐”ฉ', '๐”ช', '๐”ซ', '๐”ฌ', '๐”ญ', '๐”ฎ', '๐”ฏ', '๐”ฐ', '๐”ฑ', '๐”ฒ', '๐”ณ', '๐”ด', '๐”ต', '๐”ถ', '๐”ท', '๐”„', '๐”…', 'โ„ญ', '๐”‡', '๐”ˆ', '๐”‰', '๐”Š', 'โ„Œ', 'โ„‘', '๐”', '๐”Ž', '๐”', '๐”', '๐”‘', '๐”’', '๐”“', '๐””', 'โ„œ', '๐”–', '๐”—', '๐”˜', '๐”™', '๐”š', '๐”›', '๐”œ', 'โ„จ', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'frakturBold' => ['๐–†', '๐–‡', '๐–ˆ', '๐–‰', '๐–Š', '๐–‹', '๐–Œ', '๐–', '๐–Ž', '๐–', '๐–', '๐–‘', '๐–’', '๐–“', '๐–”', '๐–•', '๐––', '๐–—', '๐–˜', '๐–™', '๐–š', '๐–›', '๐–œ', '๐–', '๐–ž', '๐–Ÿ', '๐•ฌ', '๐•ญ', '๐•ฎ', '๐•ฏ', '๐•ฐ', '๐•ฑ', '๐•ฒ', '๐•ณ', '๐•ด', '๐•ต', '๐•ถ', '๐•ท', '๐•ธ', '๐•น', '๐•บ', '๐•ป', '๐•ผ', '๐•ฝ', '๐•พ', '๐•ฟ', '๐–€', '๐–', '๐–‚', '๐–ƒ', '๐–„', '๐–…', '๐ŸŽ', '๐Ÿ', '๐Ÿ', '๐Ÿ‘', '๐Ÿ’', '๐Ÿ“', '๐Ÿ”', '๐Ÿ•', '๐Ÿ–', '๐Ÿ—', 'โ—', 'โ“', '.', ',', '"', "'"],
            'monospace' => ['๐šŠ', '๐š‹', '๐šŒ', '๐š', '๐šŽ', '๐š', '๐š', '๐š‘', '๐š’', '๐š“', '๐š”', '๐š•', '๐š–', '๐š—', '๐š˜', '๐š™', '๐šš', '๐š›', '๐šœ', '๐š', '๐šž', '๐šŸ', '๐š ', '๐šก', '๐šข', '๐šฃ', '๐™ฐ', '๐™ฑ', '๐™ฒ', '๐™ณ', '๐™ด', '๐™ต', '๐™ถ', '๐™ท', '๐™ธ', '๐™น', '๐™บ', '๐™ป', '๐™ผ', '๐™ฝ', '๐™พ', '๐™ฟ', '๐š€', '๐š', '๐š‚', '๐šƒ', '๐š„', '๐š…', '๐š†', '๐š‡', '๐šˆ', '๐š‰', '๐Ÿถ', '๐Ÿท', '๐Ÿธ', '๐Ÿน', '๐Ÿบ', '๐Ÿป', '๐Ÿผ', '๐Ÿฝ', '๐Ÿพ', '๐Ÿฟ', '๏ผ', '๏ผŸ', '๏ผŽ', '๏ผŒ', '"', '๏ผ‡'],
            'fullwidth' => ['๏ฝ', '๏ฝ‚', '๏ฝƒ', '๏ฝ„', '๏ฝ…', '๏ฝ†', '๏ฝ‡', '๏ฝˆ', '๏ฝ‰', '๏ฝŠ', '๏ฝ‹', '๏ฝŒ', '๏ฝ', '๏ฝŽ', '๏ฝ', '๏ฝ', '๏ฝ‘', '๏ฝ’', '๏ฝ“', '๏ฝ”', '๏ฝ•', '๏ฝ–', '๏ฝ—', '๏ฝ˜', '๏ฝ™', '๏ฝš', '๏ผก', '๏ผข', '๏ผฃ', '๏ผค', '๏ผฅ', '๏ผฆ', '๏ผง', '๏ผจ', '๏ผฉ', '๏ผช', '๏ผซ', '๏ผฌ', '๏ผญ', '๏ผฎ', '๏ผฏ', '๏ผฐ', '๏ผฑ', '๏ผฒ', '๏ผณ', '๏ผด', '๏ผต', '๏ผถ', '๏ผท', '๏ผธ', '๏ผน', '๏ผบ', '๏ผ', '๏ผ‘', '๏ผ’', '๏ผ“', '๏ผ”', '๏ผ•', '๏ผ–', '๏ผ—', '๏ผ˜', '๏ผ™', '๏ผ', '๏ผŸ', '๏ผŽ', '๏ผŒ', '"', '๏ผ‡'],
            'doublestruck' => ['๐•’', '๐•“', '๐•”', '๐••', '๐•–', '๐•—', '๐•˜', '๐•™', '๐•š', '๐•›', '๐•œ', '๐•', '๐•ž', '๐•Ÿ', '๐• ', '๐•ก', '๐•ข', '๐•ฃ', '๐•ค', '๐•ฅ', '๐•ฆ', '๐•ง', '๐•จ', '๐•ฉ', '๐•ช', '๐•ซ', '๐”ธ', '๐”น', 'โ„‚', '๐”ป', '๐”ผ', '๐”ฝ', '๐”พ', 'โ„', '๐•€', '๐•', '๐•‚', '๐•ƒ', '๐•„', 'โ„•', '๐•†', 'โ„™', 'โ„š', 'โ„', '๐•Š', '๐•‹', '๐•Œ', '๐•', '๐•Ž', '๐•', '๐•', 'โ„ค', '๐Ÿ˜', '๐Ÿ™', '๐Ÿš', '๐Ÿ›', '๐Ÿœ', '๐Ÿ', '๐Ÿž', '๐ŸŸ', '๐Ÿ ', '๐Ÿก', 'โ•', 'โ”', '.', ',', '"', "'"],
            'capitalized' => ['แด€', 'ส™', 'แด„', 'แด…', 'แด‡', '๊œฐ', 'ษข', 'สœ', 'ษช', 'แดŠ', 'แด‹', 'สŸ', 'แด', 'ษด', 'แด', 'แด˜', 'q', 'ส€', '๊œฑ', 'แด›', 'แดœ', 'แด ', 'แดก', 'x', 'ส', 'แดข', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '๏น—', '๏น–', '๏น’', '๏น', '"', "'"],
            'circled' => ['โ“', 'โ“‘', 'โ“’', 'โ““', 'โ“”', 'โ“•', 'โ“–', 'โ“—', 'โ“˜', 'โ“™', 'โ“š', 'โ“›', 'โ“œ', 'โ“', 'โ“ž', 'โ“Ÿ', 'โ“ ', 'โ“ก', 'โ“ข', 'โ“ฃ', 'โ“ค', 'โ“ฅ', 'โ“ฆ', 'โ“ง', 'โ“จ', 'โ“ฉ', 'โ’ถ', 'โ’ท', 'โ’ธ', 'โ’น', 'โ’บ', 'โ’ป', 'โ’ผ', 'โ’ฝ', 'โ’พ', 'โ’ฟ', 'โ“€', 'โ“', 'โ“‚', 'โ“ƒ', 'โ“„', 'โ“…', 'โ“†', 'โ“‡', 'โ“ˆ', 'โ“‰', 'โ“Š', 'โ“‹', 'โ“Œ', 'โ“', 'โ“Ž', 'โ“', 'โ“ช', 'โ‘ ', 'โ‘ก', 'โ‘ข', 'โ‘ฃ', 'โ‘ค', 'โ‘ฅ', 'โ‘ฆ', 'โ‘ง', 'โ‘จ', '!', '?', '.', ',', '"', "'"],
            'parenthesized' => ['โ’œ', 'โ’', 'โ’ž', 'โ’Ÿ', 'โ’ ', 'โ’ก', 'โ’ข', 'โ’ฃ', 'โ’ค', 'โ’ฅ', 'โ’ฆ', 'โ’ง', 'โ’จ', 'โ’ฉ', 'โ’ช', 'โ’ซ', 'โ’ฌ', 'โ’ญ', 'โ’ฎ', 'โ’ฏ', 'โ’ฐ', 'โ’ฑ', 'โ’ฒ', 'โ’ณ', 'โ’ด', 'โ’ต', '๐Ÿ„', '๐Ÿ„‘', '๐Ÿ„’', '๐Ÿ„“', '๐Ÿ„”', '๐Ÿ„•', '๐Ÿ„–', '๐Ÿ„—', '๐Ÿ„˜', '๐Ÿ„™', '๐Ÿ„š', '๐Ÿ„›', '๐Ÿ„œ', '๐Ÿ„', '๐Ÿ„ž', '๐Ÿ„Ÿ', '๐Ÿ„ ', '๐Ÿ„ก', '๐Ÿ„ข', '๐Ÿ„ฃ', '๐Ÿ„ค', '๐Ÿ„ฅ', '๐Ÿ„ฆ', '๐Ÿ„ง', '๐Ÿ„จ', '๐Ÿ„ฉ', 'โ“ฟ', 'โ‘ด', 'โ‘ต', 'โ‘ถ', 'โ‘ท', 'โ‘ธ', 'โ‘น', 'โ‘บ', 'โ‘ป', 'โ‘ผ', '!', '?', '.', ',', '"', "'"],
            'underlinedSingle' => ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'underlinedDouble' => ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'strikethroughSingle' => ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"],
            'crosshatch' => ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '!', '?', '.', ',', '"', "'"]
        );
    
    /* 2 global arrays used to convert a string to and from special UTF8 font characters. [END] */
    
    /* A global function to convert a string into special UTF8 font characters. [BEGIN] */
    
    /* Valid Font Types ($utf8_spcl_fnt_type): 
    
    'serifBold', 'serifItalic', 'serifBoldItalic', 'sans', 'sansBold', 'sansItalic', 'script', 'scriptBold', 
    'fraktur', 'frakturBold', 'monospace', 'fullwidth', 'doublestruck', 'capitalized', 'circled', 'parenthesized', 
    'underlinedSingle', 'underlinedDouble', 'strikethroughSingle', 'crosshatch' 
    */
    
    if (!function_exists('cvtIntoSpclUTF8FntChars'))
        {
            function cvtIntoSpclUTF8FntChars($utf8_spcl_fnt_type, $str)
                {
                    global $utf8_norm_fnt_char_arr, $utf8_spcl_fnt_type_arr;
    
                    if (isset($utf8_spcl_fnt_type) && is_array($utf8_spcl_fnt_type_arr) && array_key_exists($utf8_spcl_fnt_type, $utf8_spcl_fnt_type_arr))
                        {
                            $str = str_replace($utf8_norm_fnt_char_arr, $utf8_spcl_fnt_type_arr[$utf8_spcl_fnt_type], $str);
                        };
    
                    return $str;
                };
        };
    
    /* A global function to convert a string into special UTF8 font characters. [END] */
    
    /* A global function to revert a string from special UTF8 font characters. [BEGIN] */
    
    if (!function_exists('rvtFromSpclUTF8FntChars'))
        {
            function rvtFromSpclUTF8FntChars($str)
                {
                    global $utf8_norm_fnt_char_arr, $utf8_spcl_fnt_type_arr;
    
                    foreach ($utf8_spcl_fnt_type_arr as $utf8_spcl_fnt_char_arr)
                        {
                            $str = str_replace($utf8_spcl_fnt_char_arr, $utf8_norm_fnt_char_arr, $str);
                        };
    
                    return $str;
                };
        };
    
    /* A global function to revert a string from special UTF8 font characters. [END] */
    
    ?>
    

    Usage:

    echo cvtIntoSpclUTF8FntChars('script', 'Hello, World!');
    

    becomesโ€ฆ

    โ„‹โ„ฏ๐“๐“โ„ด, ๐’ฒโ„ด๐“‡๐“๐’น!
    

    and...

    echo rvtFromSpclUTF8FntChars('โ„‹โ„ฏ๐“๐“โ„ด, ๐’ฒโ„ด๐“‡๐“๐’น!');
    

    becomes...

    Hello, World!