PHP姓名快速匿名化工具(重组脱敏)

2024-03-19 02:36

本文主要是介绍PHP姓名快速匿名化工具(重组脱敏),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

PHP姓名重组工具(脱敏/匿名化工具)
将excel数据姓名列粘贴提交,得到随机姓+随机中间字+随机尾字的重组姓名
那些年自用瞎搞的代码,今日整理成网页交提交得到结果的交互功能分享。 

 

<?php 
//PHP姓名重组工具(脱敏/匿名化工具)
//将excel数据姓名列粘贴提交,得到随机姓+随机中间字+随机尾字的重组姓名
//那些年自用瞎搞的代码,今日整理成网页交提交得到结果的交互功能分享。
//作者 yujianyue 15058593138@qq.com 可接小功能定制
$nx = "PHP姓名重组工具(脱敏/匿名化工具)";
function tipx($str){
preg_match_all('/[\x{4e00}-\x{9fa5}]+/u', $str, $match);
return join("\r\n",$match[0]);
}
function tips($str){
preg_match_all('/[|][\x{4e00}-\x{9fa5}]/u', $str, $match);
return join("\r\n",$match[0]);
}
function tipe($str){
preg_match_all('/[\x{4e00}-\x{9fa5}][|]/u', $str, $match);
return join("\r\n",$match[0]);
}
function tipz($str){
preg_match_all('/[\x{4e00}-\x{9fa5}]/u', $str, $match);
return join("\r\n",$match[0]);
}
function tipo($str){
preg_match_all('/[\x{4e00}-\x{9fa5}]/u', $str, $match);
return $match[0];
}
function txtarea($nb,$ht="50vh") {$nb = str_replace(array("[","]"),"",$nb);return "\r\n\r\n<textarea style='display:inline; height:$ht;width:5vw;min-width:118px;'>$nb</textarea>";
}if($_GET["x"] == "cha"){
$txts = isset($_POST['tips']) ? $_POST['tips'] : '';
$lis1 = tipx($txts); echo txtarea($lis1); 
$lisx = str_replace(array("\r\n","\r","\n"),"|",$lis1);
$lisy = str_replace(array("\r\n","\r","\n"),"||",$lis1);
$lis2 = tips("|$lisx|"); $liz2=str_replace("|","",$lis2); echo txtarea($liz2);
$lis3 = tipe("|$lisx|"); $liz3=str_replace("|","",$lis3); echo txtarea($liz3);
$lisa = explode("\r\n", $lis2."\r\n".$lis3);
$lisb = str_replace($lisa,"","|$lisy|");
$lis4 = tipz("|$lisb|"); echo txtarea($lis4);
$x1 = tipo($liz2); $x2 = tipo($liz3); $x3 = tipo($lis4);
if(count($x3)<1) $x3=$x2;
//shuffle($x1); shuffle($x2); shuffle($x3); //可以增一重随机
$namx = [];
for($ii=0;$ii<count($x1);$ii++){$z1=array_rand($x1); $z3=array_rand($x3); $z2=array_rand($x2);$namx[]= $x1[$z1].$x3[$z3].$x2[$z2];
}
$namz = join("\r\n",$namx); echo txtarea($namz);
exit();
}
?>
<!DOCTYPE html>
<html>
<head>
<title><?php echo $nx; ?></title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width,minimum-scale=1.0,maximum-scale=1.0">
<meta name="apple-mobile-web-app-capable" content="yes" />
<script type="text/javascript">
console.log("问题反馈电话:","15058593138");
console.log("问题反馈邮件:","admin@12391.net");
function $(objId){
return document.getElementById(objId);
}
function loadcha(xid) {
var xmlhttp;
var Stxt= "nums=aa";
Stxt+="&tips="+ encodeURIComponent($("tips").value);
//$("tips").innerHTML = "正在加载...";
if (window.XMLHttpRequest) {
xmlhttp = new XMLHttpRequest();
} else {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
var btxt = xmlhttp.response;
if(btxt == "err01"){ $("tipx").innerHTML = "!"; return false;}
$('tipx').innerHTML = xmlhttp.response;
}
}
xmlhttp.open("POST", "?x=cha&tt="+Math.random(), true);
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.send(Stxt);
}</script>
<style>
div,#tipx{display:block;width:99.7%;border:0;margin-top:5px;}
textarea{display:block;width:99.7%;border:1px solid #ccc;height:160px;}
table{margin:20px auto;border-left:1px solid #a2c6d3;border-top:3px solid #0180CF;font-size:12px;width:99.7%;}
table td{border-right:1px solid #a2c6d3;border-bottom:1px solid #a2c6d3;padding:2px;word-wrap:break-word;word-break:break-all;}
td{min-width:30px;max-width:490px;}
.tt{background-color: #f2f2f2;}
#submit{ height:35px;}
</style>
</head>
<body><form class="form" id="form" method="POST" act="?act=cha" ><p><?php echo $nx; ?></p>
<!-- 以下名字300姓氏 随机组成-->
<textarea id="tips">
邵向崔
翟顾成
吴钱康
桂何查
桂何查
闵姚邹
安柯覃
植邵施
阮马魏
阮顾查
尹葛车
谢曹鲍
梅孟芦
安涂黄
屈曹孔
谭席薄
叶高屈
武覃何
司侯汪
赵易谷
裴贾董
</textarea><input type="button" id="submit" value="提交发送" onclick="loadcha('xid')">
<div id="tipx">将姓名列粘贴提交,得到重新组合的姓名(首中尾字不变)。</div></form>
</body>
</html>

这篇关于PHP姓名快速匿名化工具(重组脱敏)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/824517

相关文章

Java中的工具类命名方法

《Java中的工具类命名方法》:本文主要介绍Java中的工具类究竟如何命名,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录Java中的工具类究竟如何命名?先来几个例子几种命名方式的比较到底如何命名 ?总结Java中的工具类究竟如何命名?先来几个例子JD

快速修复一个Panic的Linux内核的技巧

《快速修复一个Panic的Linux内核的技巧》Linux系统中运行了不当的mkinitcpio操作导致内核文件不能正常工作,重启的时候,内核启动中止于Panic状态,该怎么解决这个问题呢?下面我们就... 感谢China编程(www.chinasem.cn)网友 鸢一雨音 的投稿写这篇文章是有原因的。为了配置完

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.

MySql match against工具详细用法

《MySqlmatchagainst工具详细用法》在MySQL中,MATCH……AGAINST是全文索引(Full-Textindex)的查询语法,它允许你对文本进行高效的全文搜素,支持自然语言搜... 目录一、全文索引的基本概念二、创建全文索引三、自然语言搜索四、布尔搜索五、相关性排序六、全文索引的限制七

基于Java实现回调监听工具类

《基于Java实现回调监听工具类》这篇文章主要为大家详细介绍了如何基于Java实现一个回调监听工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录监听接口类 Listenable实际用法打印结果首先,会用到 函数式接口 Consumer, 通过这个可以解耦回调方法,下面先写一个

使用Python构建一个Hexo博客发布工具

《使用Python构建一个Hexo博客发布工具》虽然Hexo的命令行工具非常强大,但对于日常的博客撰写和发布过程,我总觉得缺少一个直观的图形界面来简化操作,下面我们就来看看如何使用Python构建一个... 目录引言Hexo博客系统简介设计需求技术选择代码实现主框架界面设计核心功能实现1. 发布文章2. 加

JS+HTML实现在线图片水印添加工具

《JS+HTML实现在线图片水印添加工具》在社交媒体和内容创作日益频繁的今天,如何保护原创内容、展示品牌身份成了一个不得不面对的问题,本文将实现一个完全基于HTML+CSS构建的现代化图片水印在线工具... 目录概述功能亮点使用方法技术解析延伸思考运行效果项目源码下载总结概述在社交媒体和内容创作日益频繁的

基于Python打造一个全能文本处理工具

《基于Python打造一个全能文本处理工具》:本文主要介绍一个基于Python+Tkinter开发的全功能本地化文本处理工具,它不仅具备基础的格式转换功能,更集成了中文特色处理等实用功能,有需要的... 目录1. 概述:当文本处理遇上python图形界面2. 功能全景图:六大核心模块解析3.运行效果4. 相

springboot项目中常用的工具类和api详解

《springboot项目中常用的工具类和api详解》在SpringBoot项目中,开发者通常会依赖一些工具类和API来简化开发、提高效率,以下是一些常用的工具类及其典型应用场景,涵盖Spring原生... 目录1. Spring Framework 自带工具类(1) StringUtils(2) Coll

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析