php实现普通可见字符串与不可见零宽字符相互转换加密解密代码

代码语言:php

所属分类:加密解密

代码描述:php实现普通可见字符串与不可见零宽字符相互转换加密解密代码,通过ord及decbin将普通字符串逐一变成零宽字符,解密就是找到零宽字符。

代码标签: php 普通 可见 字符串 不可见 零宽 字符 相互 转换 加密 解密 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

<?php
//将正常字加密成符零宽字符
function encryptWithZeroWidth($text) {
    $zeroWidthText = '';
    foreach (str_split($text) as $char) {
        $charCode = ord($char);
        $binaryStr = decbin($charCode);
        $zeroWidthChar = '';
        foreach (str_split($binaryStr) as $bit) {
            if ($bit === '1') {
                $zeroWidthChar .= '&#8203;'; // &#8203;
            } elseif ($bit === '0') {
                $zeroWidthChar .= '&#8204;'; // &#8204;
            } 
        }
        $zeroWidthText .= $zeroWidthChar . '&#8206;'; // &#8206;
    }
    return $zeroWidthText;
}
//将零宽字符解密成正常字符
function decryptWithZeroWidth($zeroWidthText) {
    $text = '';
    $zeroWidthChars = explode('&#8206;', $zeroWidthText);
    foreach ($zeroWidthChars as $zeroWidthChar) {
        $binaryStr = '';
        $array =  preg_split('/(?=&#820[34];)/', $zeroWidthChar, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
    

        foreach ($array as $bit) {
            if ($bit === '&#8203;') {
                $binaryStr .= '1';
 .........完整代码请登录后点击上方下载按钮下载查看

网友评论0