php 去除txt文本重复数据
因为是
13503594262
13503594262
13243694429
13503594262
13880561750
13404776999
15675167006
这种格式,所有我们就用file把文本直接载入到数组
$array = file($file);
用print_r输出
Array
(
[0] => 13688179054
[1] => 13652179481
[2] => 13545684587
[3] => 13787008977
[4] => 13077337442
[5] => 15900780969
[6] => 15900780969
[7] => 13077337442
[8] => 13077337442
[9] => 13830933836
[10] => 13640292942
[11] => 13582045025
[12] => 13522725381
[13] => 13522725382
[14] => 13512345678
[15] => 13001831752
[16] => 13737657988
[17] => 13737657988
[18] => 13636399773
[19] => 13661726563
[20] => 13554797552
[21] => 13919571298
[22] => 15809480888
[23] => 13925810190
[24] => 13631811119
[25] => 13524620464
[26] => 13077337442
[27] => 13077337442
[28] => 13077337442
[29] => 13077337442
*/
$zhi = file('www.111cn.net.txt');
print_r($zhi);
die();
$chuzhi = array_values(array_unique($zhi));
$str ='';
for($i=0;$i<count($chuzhi);$i++){
$str .= $chuzhi[$i];
}
//保存到字符串里,再用fopen写入到文本
$hold = fopen('12.txt','w+');
fwrite($hold,$str);
fclose($hold);
/*
www.111cn.net.txt文本内容
13503594262
13503594262
13503594262
13503594262
13243694429
13503594262
13880561750
13404776999
15675167006
注明:本文章原创于www.111cn.net转载注明出处,谢谢合作。
preg_match_all ("/(? (d{3})? )? -? (?(1) [-s] ) d{3}-d{4}/x",
"Call 555-1212 or (221)-(820)-555-1212", $phones);
print_r($phones[0]);echo "<br>";
print_r($phones[1]);
输出的结果为:
Array ( [0] => 555-1212 [1] => (820)-555-1212 )
Array ( [0] => [1] => 820 )
谁能帮忙解释下这个正则表达式的意思?关键是 (? (d{3})? )? (?(1) [-s] ) 这部分。
为什么能 匹配 (820),却不能匹配 (221) ?
(? (d{3})? )? (?(1) [-s] ) 中
(1) 引用的即 (d{3})
(?(1) [-s] ) 如果 (d{3}) 匹配成功,则继续匹配 [-s]
原型是(?a b|c) ,如果a匹配了,继续匹配b,否则匹配c
$data = array();
$data[]= array("01" ,"02", "18" , "29" , "31" , "32");
$data[]= array("02" ,"09", "11" , "22" , "24" , "27");
$data[]= array("07" ,"16", "26" , "27" , "29" , "31");
$data[]=array("04", "05", "07", "10", "13", "25");
$data[]=array("02", "04", "05", "08", "19", "22");
$data[]=array("03", "04", "15", "25", "26", "30");
$data[]=array("01", "03", "06", "12", "16", "32");
$data[]=array("01", "05", "14", www.111cn.net, "17", "22");
// 判断表格中3个以上的连续
function checkAll($sourceArr2D) {
$count = sizeof($sourceArr2D);
for($i=0; $i<$count; $i++){
check_h($sourceArr2D[$i], $i);//找寻水平方向
if($i>0) {
check_v($sourceArr2D, $i);// 找寻竖直方向
check_l($sourceArr2D, $i);// 找寻/方向
check_r($sourceArr2D, $i);// 找寻方向
}
}
}
// 判断水平方向
$h = array();// 保存水平方向上的搜寻结果
function check_h($arr, $rownum) {
//sort($arr, SORT_NUMERIC);
global $h;
$flag = false;
for($i=2; $i<6; $i++){
if( $arr[$i-2]==$arr[$i]-2 ){ // 因为数组内数字不重复且有序故可取巧
if(!$flag) {
$h[$rownum] = array($arr[$i-2], $arr[$i-1], $arr[$i]);
$flag = true;
}else{
array_push($h[$rownum], $arr[$i]);
}
}
}
}
// 判断竖直方向
$v = array();// 保存竖直方向上的搜寻结果
function check_v($sourceArr2D, $rownum) {
global $v;
for($i=0; $i<6; $i++){
$val = $sourceArr2D[$rownum][$i];
if( in_array($rownum.'.'.$val, $v) ){
continue;
}
if( in_array($val,$sourceArr2D[$rownum-1]) && in_array($val,$sourceArr2D[$rownum+1]) ){
array_push($v, ($rownum-1).'.'.$val, $rownum.'.'.$val, ($rownum+1).'.'.$val);
$tmp = $rownum + 2;
while( ($tmp < sizeof($sourceArr2D)) && in_array($val, $sourceArr2D[$tmp]) ){
array_push($v, $tmp.'.'.$val);
$tmp++;
}
}
}
}
// 判断/方向
$l = array();// 保存/方向上的搜寻结果
function check_l() {
}
// 判断方向
$r = array();// 保存方向上的搜寻结果
function check_r() {
}
// 结束定义,开始应用
checkAll($data);
echo '<br /><br />水平方向上的找寻:';
print_r($h);
echo '<br /><br />竖直方向上的找寻:';
print_r($v);
echo '<br /><br />/方向上的找寻:';
print_r($l);
echo '<br /><br />方向上的找寻:';
print_r($r);
if($_POST[submit]){
$username= str_replace(" ","",$_POST[username]);
$sql="select * from user_list where `username` = '$username'";
$query=mysql教程_query($sql);
$us=is_array($row=mysql_fetch_array($query));
$ps教程= $us ? md5($_POST[password].ALL_PS)== $row[password] : FALSE;
$pw=$ps?$_SESSION["code"]==$_POST[code]:FALSE;
if($ps){
$_SESSION[uid]=$row[uid];
$_SESSION[user_shell]=md5($row[username].$row[password].ALL_PS);
$_SESSION[times]=mktime();
if($pw){
echo "登陆成功";
}
else{
echo "验证码错误";
session_destroy();
}
}else{
echo "密码或者用户名错误";
session_destroy();
}
}
?>
<form action="" method="post">
用户名:<input type="text" name="username" style="height:23px" /><br>
密 码:<input type="password" name="password" style="height:23px" /><br>
验证码:<input type="code" name="code" size="10" style="height:23px" />
<img src="imgcode.php">
<br><br>
<input type="submit" name="submit" value="登陆"/>
</form>
数据库教程结构
--
-- 表的结构 `user_list`
--
CREATE TABLE `user_list` (
`uid` int(11) NOT NULL auto_increment,
`m_id` varchar(5) NOT NULL,
`username` varchar(25) NOT NULL,
`password` varchar(64) NOT NULL,
PRIMARY KEY (`uid`)
) ENGINE=MyISAM DEFAULT CHARSET=gb2312 AUTO_INCREMENT=11 ;
--
-- 导出表中的数据 `user_list`
--
INSERT INTO `user_list` (`uid`, `m_id`, `username`, `password`) VALUES
(9, '1', 'admin', '75cf565ad38d0f837c43363e402b1a00'),
(10, '2', 'admin2', '75cf565ad38d0f837c43363e402b1a00');
x,是要处理的浮点型数据
prec,保存几位小数
提示和注释
注释:PHP 默认不能正确处理类似 "12,300.2" 的字符串。
注释:prec 参数是在 PHP 4 中被引入的。。
*/
//实例浮点数的截断函数,返回值仍为浮点数。
$foo = round(3.4); // $foo == 3.0
$foo = round(3.5); // $foo == 4.0
$foo = round(3.6); // $foo == 4.0
$foo = round(3.6, 0); // equivalent with above
$foo = round(1.95583, 2); // $foo == 1.96
$foo = round(1241757, -3); // $foo == 1242000
//round实例二
echo(round(0.68));
echo(round(0.40));
echo(round(0.3));
echo(round(-3.30));
echo(round(-4.90));
/*
1
0
0
-3
-5
*/
//返回将 x 根据指定精度 prec (十进制小数点后数字的数目)进行四舍五入的结果。prec 也可以是负数或零(默认值
相关文章
- 本文给大家分享C#连接SQL数据库和查询数据功能的操作技巧,本文通过图文并茂的形式给大家介绍的非常详细,需要的朋友参考下吧...2021-05-17
- 最基础的对数据的增加删除修改操作实例,菜鸟们收了吧...2013-09-26
- 这篇文章主要介绍了解决Mybatis 大数据量的批量insert问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-09
Antd-vue Table组件添加Click事件,实现点击某行数据教程
这篇文章主要介绍了Antd-vue Table组件添加Click事件,实现点击某行数据教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-17- 这篇文章主要介绍了详解如何清理redis集群的所有数据,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-18
- 这篇文章主要介绍了vue 获取到数据但却渲染不到页面上的解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-19
- 在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
- 这篇文章主要介绍了mybatis-plus 处理大数据插入太慢的解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-18
- 这篇文章主要介绍了postgresql数据添加两个字段联合唯一的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-04
Vue生命周期activated之返回上一页不重新请求数据操作
这篇文章主要介绍了Vue生命周期activated之返回上一页不重新请求数据操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-26- 这篇文章主要介绍了c# socket网络编程,server端接收,client端发送数据,大家参考使用吧...2020-06-25
- 这篇文章主要介绍了解决vue watch数据的方法被调用了两次的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-07
- 这篇文章主要介绍了vue 数据(data)赋值问题的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-29
- 这篇文章主要介绍了Python3 常用数据标准化方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-24
- 删除重复数据,只保留一条用SQL语句,删除掉重复项只保留一条在几千条记录里,存在着些相同的记录,如何能用SQL语句,删除掉重复的呢...2018-09-10
- 这篇文章主要为大家详细介绍了node.js从数据库获取数据的具体代码,nodejs可以获取具体某张数据表信息,感兴趣的朋友可以参考一下...2016-05-09
- 使用下以两种方法时必须把字段设为”主键(PRIMARY KEY”或”唯一约束(UNIQUE)”。1:使用REPLACE INTO (此种方法是利用替换的方法,有点似类于先删除再插入) 复制代码 代码如下:REPLACE INTO Syntax REPLACE [LOW_PRIO...2013-10-04
- 这篇文章主要介绍了PostgreSQL 恢复误删数据的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-01-18
- 这篇文章主要介绍了C#实现窗体间传递数据实例,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C#删除字符串中重复字符的方法,涉及C#针对字符串的遍历及移除等操作的技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25