2025-01-25 05:36:40 | 我爱编程网
$arr = array(1,2,4,2,0,9,8,5);//定义一个数组。
$arr1 = $arr; //定义另一个数组和上一个数组一样。
//循环第一个数组让后循环第二个数组 用第一个数组的每个值和第二个数组比较如果相同就删除,最后输出第二个数组就行了。
for($i = 0;$i<count($arr);$i++){
for($j=$i+1;$j<count($arr);$j++){
if($arr[$i] == $arr[$j])
unset($arr1[$i]);
}
}
echo'<pre>';
print_r($arr1);
第二 如果允许使用array_uniqe()函数的话,直接array_uniqe(直接写数组名就ok)。
在PHP中可以使用内置函数array_unique()来直接删除重复元素,也可以使用array_flip()函数来间接删除重复元素。
1.array_unique()函数
array_unique()函数可以移除数组中的重复的值,并返回结果数组;当几个数组元素的值相等时,只保留第一个元素,其他的元素被删除。
代码示例:
<?php$result1 = array("a" => "green", "red", "b" => "green", "blue",
"red");var_dump($result1);$result2 = array_unique($result1);var_dump($result2);?>
2.array_flip()函数
array_flip()是反转数组键和值的函数,它有个特性就是如果数组中有二个值是一样的,那么反转后会保留最后一个键和值,利用这个特性我们用他来间接的实现数组的去重。
代码示例:
<?phpheader("content-type:text/html;
charset=utf-8");$a = array(1, 5, 2, 5, 1, 3, 2, 4, 5);// 输出原始数组echo "原始数组
:";var_dump($a);// 。
通过使用翻转键和值移除重复值$a = array_flip($a);
// 通过再次翻转键和值来恢复数组元素$a = array_flip($a);// 重新排序数组键$a = array_values($a);// 输出更新后的数组echo "更新数组 :";var_dump($a);?>
扩展资料:
在 PHP 中创建数组:
在 PHP 中, array() 函数用于创建数组:
array();
在 PHP 中,有三种数组类型:
索引数组 - 带有数字索引的数组。
关联数组 - 带有指定键的数组。
多维数组 - 包含一个或多个数组的数组。
1、PHP 索引数组
有两种创建索引数组的方法:
索引是自动分配的(索引从 0 开始):
$cars=array("porsche","BMW","Volvo");
或者也可以手动分配索引:
$cars[0]="porsche";
2、遍历索引数组:
如需遍历并输出索引数组的所有值,可以使用 for 循环,就像这样:
实例:
<?php
$cars=array("porsche","BMW","Volvo");
$arrlength=count($cars);
for($x=0;$x<$arrlength;$x++) { 我爱编程网
echo $cars[$x];
echo "<br>";
}
?>
3、多维数组:
将在 PHP 高级教程出现多维数组。
参考资料来源: 百度百科-PHP
我爱编程网(https://www.52biancheng.com)小编还为大家带来PHP中使用按位取反(~)函数创建后门的相关内容。
PHP中使用按位取反(~)函数创建后门怎么能通俗易通的了解php中的反射和依赖注入这两个概念除非你去开发类似ZendFramework,ThinkPHP,CakePHP之类的框架,几乎没有机会用到这个。这是很底层的东西,尤其是依赖注入这种东西的应用场景就是辅助开发,选型的框架支持依赖注入就行了,没必要自己实现。而反射这个东西也差不多,在业务逻辑中我从来没遇到过必须要靠反射解决的问题,同样也是框架才用到。php反射在哪些场
PHP中什么是依赖注入依赖注入可能是我所知道的最简单设计模式之一,很多情况下可能你无意识中已经使用了依赖注入。不过它也是最难解释的一个。我认为有一部分原因是由于大多数介绍依赖注入的例子缺乏实际意义,让人难理解。因为PHP主要用于Web开发,那就先来看一个简单的web开发实例。HTTP本身是一个无状态的连接协议,为了支持客户在发起WEB请求时应用程序能存储用户信息,我们就需要通过一种技术来
php基础知识点php基础知识点PHP是一种非常流行的开源服务器端脚本语言,下面我整理了php基础知识点,希望对大家有帮助!定义和用法strrev()函数反转字符串。语法strrev(string)参数描述string必需。规定要反转的字符串。echo和print都可以做输出,不同的是,echo不是函数,没有返回值,而print是
java中反射实例类装载的步骤及简要阐述java反射和类装载反射机制:Personp=newPerson();这是什么?当然是实例化一个对象了.可是这种实例化对象的方法存在一个问题,那就是必须要知道类名才可以实例化它的对象,这样我们在应用方面就会受到限制.那么有没有这样一种方式,让我们不知道这个类的类名就可以实例化它的对象呢?ThankGoodness!幸亏我们用的是java
php分页跳转你这个太麻烦我给你推荐一个<?phpclasspage{var$page_name="page";var$next_page='>';//下一页var$pre_page='<';//上一页var$first_page='<<首页';//首页var$last_page='尾页>>';//尾页var$p
[VNCTF2022]InterestingPHP复现本文为看雪论坛优秀文章看雪论坛作者ID:H3h3QAQ在开始尝试复现题目的过程中,首先映入眼帘的是简洁的源码。尝试利用phpinfo()查看配置信息时遇到了禁用,但这并未阻碍我们获取关键信息的道路。利用ini_get_all()函数,我们得以窥探disable_functions、disable_class、open_base
什么是sql注入,如何实现注入?找了一个,希望能帮助你随着B/S模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多。但是由于这个行业的入门门槛不高,程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的SQLInjec
PHP反序列化面向对象的PHP编程中,类和对象是核心概念。类可以看作是模板或蓝图,而对象则是基于类实例化的具体实体。对象封装了属性和方法,属性相当于变量,方法则类似于函数,它们共同构成了对象的功能和状态。序列化是将对象的状态信息转换为可以存储或传输的格式的过程。这个过程是针对对象的,而不是类。通过使用`serialize()`函数,可以将对象序列化为字符串,便于数据交换。序列化后
2025-02-01 20:24:39
2025-02-12 03:21:37
2025-02-10 15:19:48
2025-01-28 17:58:32
2024-11-22 05:08:01
2024-09-10 08:50:00