当前位置: 首页>编程语言>正文

iOS 数组查找索引 数组索引值是什么

数组的分类:

        数组的本质是存储、管理和操作一组变量,数组也是php提供的八种数据类型中的其中一种,属于复合数据类型。

        数组分为两大类:索引数组(indexed)和关联数组(associative)

       索引数组的索引值是整数,在大多数编程语言中,数组都具有数字索引,从0开始,依次递增。通过位置来标识数组元素时,可以使用索引数组。

        关联数组以字符串作为索引值。在其他编程语言中很少见,但在php中使用以字符串作为下标的关联数组很方便,当通过名称来标识数组元素时,可以使用关联数组。

数组的定义:

以直接赋值的方式声明数组

        $数组变量名[下标]=资料内容        //其中索引值(下标)可以是字符串或者一个整数

        例如:$array[0]="111";  或者$array['0']="2222";

使用array()语言结构新建数组

       $数组变量名=array(key1=>value1,.....keyN=>valueN);

        如果不使用"=>"符号指定下标,默认为索引数组,默认的索引值也是从0开始递增的整数

        如果使用array()结构在初始化数组时不希望使用默认的索引值,就可以使用"=>"运算符指定非连续的索引值

数组简写语法:

        通过中括号[]定义数组      

<?php
         //php 5.4版以后可以这么写,新增的数组简写语法。

        $day=[1,'周一','早上','上班','吃饭'];

       // php 5.3版及以前的版本不接受这么写...

        $day=array(1,'周一','早上','上班','吃饭');
?>

多维数组的声明:     

<?php
      $array=array(

                array(1,'周一','早上','上班','吃饭'),

                array(2,'周二','早上','上班','吃饭')

        );
?>

遍历数组

  • 使用for循环遍历数组(不常用)
  • 联合使用list()、each()和while循环遍历数组(不常用)
  • 使用foreach语句遍历数组(常用)

       第一种语法格式:

        foreach(array_expression as $value){

                循环体

        }

        第二种语法格式:

        foreach(array_expression as $key => $value){

                循环体

        }

 例:

<?php
	$wage = array(
		"市场部" => array(
			array(1, "高某", "市场部经理", 5000.00),
			array(2, "洛某", "职员", 3000.00),
			array(3, "峰某", "职员", 2400.00),
		),
		"产品部" => array(
			array(1, "李某", "产品部经理", 6000.00),
			array(2, "周某", "职员", 4000.00),
			array(3, "吴某", "职员", 3200.00),
		),
		"财务部" => array(
			array(1, "郑某", "财务经理", 6000.00),
			array(2, "王某", "职员", 4000.00),
			array(3, "冯某", "职员", 1500.00),
		)
	);
	//使用三层foreach语句嵌套遍历三维数组,输出三张表格
	foreach($wage as $key => $value){									//最外层foreach语句遍历出三张表格,遍历出键和值
		echo '<table border="1" width="600" align="center">';
		echo '<caption><h2>'.$key. '10月工资表</h2><caption>';
		echo '<tr bgcolor="#ddddd"><th>编号</th><th>姓名</th><th>职称</th><th>工资</th></tr>';
		foreach($value as $row){										//中层foreach语句遍历出每个表格的行
			echo '<tr>';
			
			foreach($row as $col){										//内层foreach语句遍历出每个表格的列
				echo '<td align="center">' .$col. '</td>';
		}
		echo '</tr>';
	}
	echo '</table><br>';
}
?>

结果:

        

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_数据结构,第1张

 预定义数组

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_PHP_02,第2张

1、服务器变量:$_SERVER

$_SERVER是一个包含诸如头信息、路径和脚本位置的数组。数组的实体由web服务器创建,并不能保证所有的服务器都能产生所有的信息,服务器可能忽略了一些信息,或者产生了一些其他的新的信息。和其他的超全局数组一样,这是一个自动的全局变量,在所有的脚本中都有效,在函数或对象的方法中不需要使用global关键字访问它。

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_iOS 数组查找索引_03,第3张

2、环境变量:$_ENV

$_ENV数组中的内容是在PHP解析器运行时,从PHP所在服务器中的环境变量转变为PHP全局变量的。它们中许多都是由PHP所运行的系统决定的,完整的列表是不可能的,需要查看PHP所在服务器的系统文档以确定其特定的环境变量。

3、URL GET 变量:$_GET

$_GET数组也是超全局变量数组,是通过URL GET方法传递的变量组成的数组。它属于外部变量,即在服务器页面中通过$_GET超全局数据获取URL或表单的GET方式传递过来的参数。

4、HTTP POST变量:$_POST

$_POST数组是通过HTTP POST方法传递的变量组成的数组。$_POST和$_GET数组之一都可以保存表单提交的变量,使用哪一个数组取决于提交表单时在表单form标记中的method属性使用的方法是post还是get。但是使用$_POST数组只能访问以post方法提交的表单数据。

5、request变量:$_REQUEST

此关联数组包含$_GET、$_POST和$_COOKIE中全部的内容,但是其速度比较慢,所以不推荐使用。

6、HTTP文件上传变量:$_FILES

使用表单的file输入域上传文件时,必须使用post提交。但在服务器文件中,并不能通过$_POST超全局数组获取到表单中file域的内容。而$_FILES超全局变量是通过post方法传递的已上传文件项目组成的数组。$_FILES是一个二维数组,包含5个子数组元素,其中第一个下标是表单中file输入域的名称,第二个下标用于描述上传文件的属性。

7、HTTP Cookies :$_COOKIE

$_COOKIE超全局数组是经由HTTP Cookies方法提交至脚本的变量。通常这些Cookies是由以前执行的PHP脚本通过setCookies()函数设置到客户端浏览器中的,当PHP脚本从客户浏览器提取了一个cookie后,它将自动把它转换成一个变量,可以通过这个$_COOKIE超全局数组和cookie的名称来存取指定的cookie值。

8、Session变量:$_SESSION

会话控制是在服务器端使用session跟踪用户,当服务器页面中使用session_start()函数开启session后,就可以使用$_SESSION数组注册全局变量,用户就可以在整个网站中访问这些会员信息。

9、Global变量:$GLOBALS

$GLOBALS是由所有已定义的全局变量组成的数组,变量名就是该数组的索引。

数据的相关处理函数

1、array_values()        

  array_values()函数的作用是返回数组中所有元素的值

 

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_php_04,第4张

2、array_keys()

array_keys()的作用是返回数组中的所有键名

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_PHP_05,第5张

3、in_array()

bool in_array(mixed neefle,array haystack[, bool strict]);

in_array()函数的作用是检查数组中是否存在某个值,即在数组中搜索给定的值

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_数据结构_06,第6张

4、count()

函数count()的作用是计算数组中的元素数目或对象的属性个数

int count($var[,int mode]);

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_数组_07,第7张

5、array_unique()

array_unique($var);

array_unique()函数的作用是删除数组中重复的元素值

iOS 数组查找索引 数组索引值是什么,iOS 数组查找索引 数组索引值是什么_iOS 数组查找索引_08,第8张

数组的排序

<?php
   $data = array(1 => "00", 5 => "11", 2 => "22", 4 => "33", 6 => "44");
    sort($data);		//根据数组的元素值对数组进行升序排列
    var_dump($data);
	rsort($data);		//根据数组的元素值对数组进行降序排列
	var_dump($data);
?>

<?php
	$data = array(1 => "00", 5 => "11", 2 => "22", 4 => "33", 6 => "44");
	ksort($data);		//根据数组的键值对数组进行升序排列
	var_dump($data);
	krsort($data);		//根据数组的键值对数组进行降序排列
	var_dump($data);
?>

<?php
	$data = array(1 => "00", "m" => "11", 2 => "22", "l" => "33", "a" => "44");
	asort($data);		//保留数组原有的键名和值,对数组的值进行升序排列
	var_dump($data);	
	arsort($data);		//保留数组原有的键名和值,对数组的值进行降序排列
	var_dump($data);	
?>

<?php
	//根据“自然排序”法对数组进行排序
	$array = ["FILE12.txt","file1.txt","File1.txt","file12.txt","file"];
	natsort($array);		//普通的"自然排序结果"
	var_dump($array);
	natcasesort($array);	//忽略大小写的"自然排序后结果"
	var_dump($array);
?>

<?php
	//根据用户自定义的规则对数组排序
	$lamp = ["JAVA","MYSQL","PHP","HTML","Git"];
	usort($lamp, "length");
	var_dump($lamp);
	
	function length($one, $two){
		if(long($one) == long($two)
			return 0;
		else
			return (long($one) > long($two)) ? 1 : -1;
		
	}
?>

https://www.xamrdz.com/lan/5jr1937658.html

相关文章: