找回密码
 注册
首页 ≡≡网络技术≡≡ PHP语言 Veno-File-Manager (VFM4)让用户私有文件夹(dir)显示 ...

CMS Veno-File-Manager (VFM4)让用户私有文件夹(dir)显示中文编码

灰儿 2022-9-1 11:19:58
Veno-File-Manager (VFM4)让用户私有文件夹(dir)显示中文编码
在二次开发Veno-File-Manager (VFM4)云盘系统时,发现根目录/vfm-admin/_content/users/users.php用户信息文件,其中的的用户文件夹数组中,键值中的中文字符为“\uXXXX”格式表示的字符串,如:
  1.   array (
  2.     'name' => 'user',
  3.     'pass' => '$1$osKFVhQd$onDS9JSlGSWAKqR.Hnu5F.',
  4.     'role' => 'user',
  5.     'dir' => '["user","temp","\\u516c\\u5171\\u8d44\\u6e90"]',
  6.   ),
复制代码

其中XXXX是16进制数字的字符串表示形式,这个叫Unicode 转义字符, 如何将其解码还原成相应的中文字符呢?
网上百度了很多方法都无法解决,后来发现实际上只需要调用PHP的 json_decode函数来解码就可以了。

解码:
$dirs = json_decode($dir)

编码:
Unicode 转义字符编码函数为:
$dirs = joson_encode($dir)

相关文件:
根目录/vfm-admin/admin-panel/view/users/modal-user.php
根目录/vfm-admin/admin-panel/view/users/new-user.php

管理后台中,“新建用户文件夹”提交界面代码:
  1. <div class="col-md-6 mb-3">
  2.     <label class="form-label"><?php echo $setUp->getString("make_directory"); ?></label>
  3.     <div class="input-group">
  4.         <div class="input-group-text">
  5.             <i class="bi bi-folder"></i>
  6.         </div>
  7.         <input type="text" class="form-control getfolder assignnew" name="userfolder" placeholder="<?php echo $setUp->getString("add_new"); ?>">
  8.     </div>
  9. </div>
  10. <!-- col-md-6 -->
复制代码

您需要登录后才可以回帖 登录 | 注册
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言 了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。
学习中心
站长自定义文字内容,利用碎片时间,随时随地获取优质内容。
Q设计语言 了解更多
Q Design 提供商家设计所需的指导与资源,帮商家快速完成产品设计、降低生产成本。