| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1356 人关注过本帖
标题:各位老师好,我是一位留学生,现在正在自学PHP语言,关于htmlspecialchars我 ...
只看楼主 加入收藏
rikacho
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2021-8-17
收藏
 问题点数:0 回复次数:1 
各位老师好,我是一位留学生,现在正在自学PHP语言,关于htmlspecialchars我有一点不懂,希望有好心的老师可以教教我,谢谢!
关于htmlspecialchars的函数化,不知道为什么我照着书写的这个代码无法运行,上面的日语大家看不懂的话也不用在意,只看编码就好了,谢谢

以下是编码

<?php
// XSS対策のためのHTMLエスケープ
function es(array|string $data, string $charset='UTF-8'):mixed {
  // $dataが配列のとき
  if (is_array($data)){
    // 再帰呼び出し
    return array_map(__METHOD__, $data);
  } else {
    // HTMLエスケープを行う
    return htmlspecialchars(string:$data, flags:ENT_QUOTES, encoding:$charset);
  }
}

// 配列の文字エンコードのチェックを行う
function cken(array $data):bool{
  $result = true;
  foreach ($data as $key => $value) {
    if (is_array($value)){
      // 含まれている値が配列のとき文字列に連結する
      $value = implode("", $value);
    }
    if (!mb_check_encoding($value)){
      // 文字エンコードが一致しないとき
      $result = false;
      // foreachでの走査をブレイクする
      break;
    }
  }
  return $result;
}
// ?>
搜索更多相关主题的帖子: string data 老师 PHP value 
2021-08-17 15:53
快速回复:各位老师好,我是一位留学生,现在正在自学PHP语言,关于htmlspecialc ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.013172 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved