+
96
-

回答

原理就是将自己要隐藏的字符串转换成零宽字符混合在可见字符中,我们以php为例

在 PHP 中,可以使用零宽字符来隐藏文本。以下是一个简单的示例,演示如何将文本隐藏在零宽字符中,并将其输出到浏览器:

<?php
// 隐藏的文本
$hiddenText = "Hidden Text";

// 函数将文本编码为零宽字符
function hideTextInZeroWidthChars($text) {
  $hiddenText = "";
  for ($i = 0; $i < strlen($text); $i++) {
    $char = $text[$i];
    $hiddenText .= '​' . $char; // 使用零宽字符 ​
  }
  return $hiddenText;
}

// 将隐藏的文本编码
$encodedText = hideTextInZeroWidthChars($hiddenText);

// 输出隐藏的文本
echo "Visible Text " . $encodedText . " More Visible Text";
?>

在上述示例中,hideTextInZeroWidthChars 函数将输入的文本编码为零宽字符(使用 HTML 实体 ​ 表示零宽字符),然后将其连接到可见文本中。最后,通过 echo 将结果输出到浏览器。请注意,这种技术用于隐藏文本的主要目的可能是在某些特定情况下保护文本内容或进行隐蔽传输。但请务必谨慎使用,以确保合法和道德的用途,避免滥用以进行欺诈或非法活动。

当然还可以php正则清理零宽字符

<?php
// 包含零宽字符的文本
$textWithZeroWidth = "Visible Text​Hidden Text​More Visible Text";

// 清理零宽字符的函数
function cleanZeroWidthChars($text) {
  // 使用正则表达式将零宽字符替换为空字符串
  $cleanedText = preg_replace('/​/', '', $text);
  return $cleanedText;
}

// 清理文本中的零宽字符
$cleanedText = cleanZeroWidthChars($textWithZeroWidth);

// 输出清理后的文本
echo $cleanedText;
?>

网友回复

我知道答案,我要回答