use 
echo mb_convert_encoding($val, "utf-8", "UTF7-IMAP");
for cyrrilic folder names(PHP 4, PHP 5, PHP 7, PHP 8)
imap_list — Read the list of mailboxes
Read the list of mailboxes.
imapAn IMAP\Connection instance.
reference
       reference should normally be just the server
       specification as described in imap_open().
      
Passing untrusted data to this parameter is insecure, unless imap.enable_insecure_rsh is disabled.
patternSpecifies where in the mailbox hierarchy to start searching.
There are two special characters you can
pass as part of the pattern:
'*' and '%'.
'*' means to return all mailboxes. If you pass
pattern as '*', you will
get a list of the entire mailbox hierarchy.
'%'
means to return the current level only.
'%' as the pattern
parameter will return only the top level
mailboxes; '~/mail/%' on UW_IMAPD will return every mailbox in the ~/mail directory, but none in subfolders of that directory.
   Returns an array containing the names of the mailboxes or false in case of failure.
  
| Version | Description | 
|---|---|
| 8.1.0 | The imapparameter expects an IMAP\Connection
  instance now; previously, a validimapresource was expected. | 
Example #1 imap_list() example
<?php
$mbox = imap_open("{imap.example.org}", "username", "password", OP_HALFOPEN)
      or die("can't connect: " . imap_last_error());
$list = imap_list($mbox, "{imap.example.org}", "*");
if (is_array($list)) {
    foreach ($list as $val) {
        echo imap_utf7_decode($val) . "\n";
    }
} else {
    echo "imap_list failed: " . imap_last_error() . "\n";
}
imap_close($mbox);
?>
use 
echo mb_convert_encoding($val, "utf-8", "UTF7-IMAP");
for cyrrilic folder namesimap_list returns a simple array of strings that look just like the $ref parameter one needs to specify:
<?php
  $srv = '{imap.example.com}';
  $conn = imap_open($srv, 'me', 'mypass');
  $boxes = imap_list($conn, $srv, '*');
  print_r($boxes);
  imap_close($conn);
?>
Output:
<pre>
Array
(
    [0] => {imap.example.com}Calendar
    [1] => {imap.example.com}Contacts
    [2] => {imap.example.com}Deleted Items
    [3] => {imap.example.com}Drafts
    [4] => {imap.example.com}Journal
    [5] => {imap.example.com}Junk E-mail
    [6] => {imap.example.com}Notes
    [7] => {imap.example.com}Outbox
    [8] => {imap.example.com}RSS Feeds
    [9] => {imap.example.com}Sent Items  
    [10] => {imap.example.com}Tasks
)
</pre>
These directly fill in the $ref argument for every function that takes one.