第三讲数组 一、什么是数组 数组就是一组数据的集合,把一系列数据组织起来,形成一个可操作的整体。数组的每个实体都包含两项:键和值。 二、声明数据 在PHP中声明数组的方式主要有两种: 一是应用array()函数声明数组, 一是直接为数组元素赋值。 <1> array()函数用来新建一个数组。它接受一定数量用逗号分隔的key => value参数对。 array( [key=>] value, ... ) // key可以是数字或者字符串// value可以是任何值 如, "编","2"=>"程","3"=>"词","4"=>"典"); ?>
<2>直接为数组元素赋值。 如果在创建数组时不知所创建数组的大小,或在实际编写程序时数组的大小可能发生变化,采用这种数组创建的方法较好。如, 三、数组的类型 PHP支持两种数组:索引数组(indexed array)和联合数组(associative array),前者使用数字作为键,后者使用字符串作为键。 四、输出数组 1.在PHP中对数组元素输出,可以通过echo语句来实现,但这只能对数组中某一元素进行输出;要将数组结构输出则要使用print_r()函数,
其语法:print_r(mixed expression),参数expression为普通的整型、字符型或实型。变量则输出该变量本身,如果该参数为数组,则按一定键值和元素的顺序显示出该数组中的所有元素。 2.用foreach 循环显示数组元素: "; echo "
"; } foreach($phpjc as $key=>$value) { echo $key.": ".$value;
PHP数组实验报告 班级:10网工三班学生姓名:谢昊天学号:1215134046 实验目的和要求: 掌握PHP的数组声明; 掌握PHP的数组定义; 掌握PHP数组的遍历和排序; 熟练运用数组完成相关的任务。 实验内容: 自己构造一个名字为students的二维数组,每个学号代表一名学生,该学生的信息由“姓名”、“性别”、“成绩”组成,数组中的元素至少具备5条。 然后按照学生的成绩高低对该二维数组进行排序,并在网页中显示排序前后的students数组。 实验步骤与调试过程: 1、启动wamp服务器; 2、注册并打开editplus.exe文件在打开弹出对话窗口选择给定的php程序,程序一定要保存C:\wamp\www 目录下; 3、在editplus中对程序进行编辑添加代码实现功能; 4、编写一个二维数组,然后进行添加数组元素; 5、编写一个函数function array_rsort ($arr,$keys, $type='desc') { // $arr 数组,$keys 所需要进行排序的键值,$type顺序; 6、定义一个变量数组$keysvalue = $new_array = array(); 7、使用foreach循环,把二维数组的第一层数组进行赋值给$keysvalue = $new_array; 8、用if语句来判断排列数组类型是升序还是降序; 9、使数组执行第一个元素reset($keysvalue); 10、再用foreach编译$keysvalue数组,并把数组的值赋给$new_array数组,返回$new_array数组; 11、调用函数$stu = array_rsort($student,'grade');并赋值给变量$stu; 12、$students["000001"]=array("学号"=>"000001","姓名"=>"张三","性别"=>"女","成绩"=>60); $students["000002"]=array("学号"=>"000002","姓名"=>"张四","性别"=>"女","成绩"=>90);
什么是 PHP? ? PHP 指 PHP:超文本预处理器(译者注:PHP: Hypertext Preprocessor,递归命名) PHP 是一种服务器端的脚本语言,类似 ASP PHP 脚本在服务器上执行 PHP 支持很多数据库 (MySQL、 Informix、 Oracle、 Sybase、 Solid、 PostgreSQL、 Generic ODBC 等等) PHP 是一个开源的软件(open source software,OSS) PHP 可免费下载使用 什么是 MySQL? ? MySQL 是一种数据库服务器 MySQL 支持标准的 SQL MySQL 可在许多平台上编译 MySQL 可免费下载使用 为什么要使用 PHP PHP PHP PHP PHP? ? 可在不同的平台上运行(Windows、Linux、Unix) 与目前几乎所有的正在被使用的服务器相兼容(Apache、IIS 等) 可从官方的 PHP 资源免费下载:https://www.wendangku.net/doc/df3861005.html, 易于学习,并可高效地运行在服务器端
从何处开始? 从何处开始? 在 Windows 或者 Linux 机器上安装 Apache 服务器 在 Windows 或者 Linux 机器上安装 PHP 在 Windows 或者 Linux 机器上安装 MySQL 什么是 PHP PHP PHP PHP 文件? 文件? 文件可包含文本、HTML 标签以及脚本 文件向浏览器返回纯粹的 HTML 文件的文件后缀是 ".php"、".php3" 或 ".phtml"
下面的链接提供了来自 https://www.wendangku.net/doc/df3861005.html, 的优秀教程,您可以从中学习到如何安装 PHP5: https://www.wendangku.net/doc/df3861005.html,/manual/en/install.php 下载 PHP 从此处下载免费的 PHP:https://www.wendangku.net/doc/df3861005.html,/downloads.php
下载 MySQL Database 从此处下载免费的 MySQL:https://www.wendangku.net/doc/df3861005.html,/downloads/index.html 下载 Apache Server 从此处下载免费的 Apache:https://www.wendangku.net/doc/df3861005.html,/download.cgi 文件的输出 您无法在浏览器中通过查看源文档的方式来查看 PHP 的源代码 - 您只能看到 PHP 文件的输出,即纯粹 的 HTML。这是因为在结果返回浏览器之前,脚本就已经在服务器执行了。 。这是因为在结果返回浏览器之前,脚本就已经在服务器执行了。
基本的 PHP 语法
PHP 的脚本块以 结束。您可以把 PHP 的脚本块放置在文档中的任何位置。 当然,在支持简写的服务器上,您可以使用 和 ?> 来开始和结束脚本块。 不过,为了达到最好的兼容性,我们推荐您使用标准形式 ( PHP 文件通常会包含 HTML 标签,就像一个 HTML 文件,以及一些 PHP 脚本代码。 在下面,我们提供了一段简单的 PHP 脚本,它可以向浏览器输出文本 "Hello World":
'windows','server'=>'apache','language'=>'PHP'); // foreach ($arr as $key => $value) { // echo $key.":".$value."
"; //循环输出多维数组 // $arr=array( // '公关部'=>array( // array('包子','经理','1500'), // array('佳佳','职员','0') // ), // '广告部'=>array( // array('包子','经理','1500'), // array('佳佳','职员','0') // ), // '设计部'=>array( // array('包子','经理','1500'), // array('佳佳','职员','0') // ) // ); // foreach ($arr as $key => $value) { // echo "
姓名 | 职务 | 工资 |
".$value." | "; // } // echo "||
上篇文章说了array_diff,这次是它的升级版本,php数组差异性比较array_diff_assoc 函数,用来比较不同数组中的key 和value的 差异并按照索引数组输出。 使用语法跟array_diff一样 $newarray = array_diff_assoc($array1,$array2.....); 要注意的也一样:array_diff_assoc 不能递归对比,只能是一维数组,如果数组嵌套数组,则将后面的数组按"数组"比较,就算不同 的数组也会相同。 不一样的而是,这次的比较多了key值,即索引值,如果索引不同,也要返回到数组中。 举例: 1.有索引的比较 <?php $array = array("key_name"=>"array","key_function"=>"array_diff_assoc"); $array1 = array("site"=>"forasp","name"=>"网站制作学习网","key_function"=>"array_diff_assoc"); $forasp = array_diff_assoc($array,$array1); print_r($forasp); ?> 结果: Array ( [key_name] => array //也就是这个key-value 值没有在后面的数组中出现,是个不同值。 ) 2.如果是无索引的数组呢 <?php $array = array("forasp","array","array_diff_assoc"); $array1 = array("forasp","网站制作学习网","array_diff_assoc"); $forasp = array_diff_assoc($array,$array1); print_r($forasp); ?> 结果跟上面的一样,不同的是这个key变成了索引 Array ( [1] => array //也就是这个key-value 值没有在后面的数组中出现,是个不同值。 ) 也就是说在没有索引的数组中,比较的是索引id 和value。 array_diff_assoc就介绍完了,它就是array_diff的升级版本吧。 更多信息请查看IT技术专栏
(1)数组的概念与分类 定义:数组是php中最重要的数据类型之一,在php中的应用非常的广泛。因为php 是弱类型的编程语言,所以php中的数组变量可以存储任意多个、任意类型的数据。使用数组的目的,就是将多个相互关联的数据组织到一起,形成一个集合,作为一个单元使用达到批量数据处理的目的。 Php中数组的根据索引来分为关联数组和数字索引数组。如果一个数组中的索引全部为数字,那么数组就称为数字索引数组。如果数组中有一个索引为字符串那么数组就称为关联数组。 (2)Php中数组的定义 A.定义方式 (1)使用array()声明 可以用array()语言结构来新建一个数组。它接受任意数量用逗号分隔的键(key) => 值(value) 对,例如: "bar", 12 => true); echo $arr["foo"]; // bar echo $arr[12]; // 1 ?> 其中键可以为整型或字符串型,值可以为任何类型。如果对给出的值 没有指定键名,则取当前最大的整数索引值,而新的键名将是该值加 一。如果指定的键名已经有了值,则该值会被覆盖。 (2)使用[]声明 我们可以使用[]来定义和修改数组元素 B.对数组元素的操作 (1)追加数组元素(就是在数组的末尾添加数组元素) $数组名[键名]=值; (2)更新数组元素 $数组名[键名]=新值; (3)删除数组元素 Unset($数组名[键名]) (4)在数组头部添加数组元素 Array_unshift($arr, $value),在数组的开头插入一个元素。 (5)在数组的尾部添加数组元素 Array_push($arr, $value1, $value2..),将一个或多个元素压入数组栈的末尾(入栈),返回入栈元素个数。
Current(数组的名称);得到目前位置指针内容 $arr=array(“one”,”two”,”three”,1,35,5,6,”four”) $a=$current($arr); $b=$current($arr); V ar_dump($a); //返回one V ar_dump($b); //返回还是one key(数组的名称);读取目标指针所指向的数组的索引的值 $arr=array(“one”,”two”,”three”,1,35,5,6,”four”) $a=$key($arr); V ar_dump($a); //返回0即下标【0】 Next(数组名称);往下移动一个 $arr=array(“one”,”two”,”three”,1,35,5,6,”four”) Echo ($a); //返回one Next($arr); Echo ($a); //返回two prev(数组名称); 往前移动一个 … end(数组名称);移动到结尾 …….. reset(数组名称);重新回到第一个位置 …… Count(数组名称),sizeof();求数组长度 Array_change_key_case(目标数组,形态常数(CASE_UPPER CASE_LOWER));将字符串索引中的所有英文字母转化为大写或者小写 $arr=array(“one”=>”one”,”WWW”=>”two”,”three”,1,35,5,6,”four”) $newarr=Array_change_key_case($arr,CASE_UPPER); Print_r($newarr); Array_chunk(目标数组,分解的索引个数,【布尔值】);将目标数组的资料内容,指定的索引个数,分解成多个小数组,布尔值表示是否保持以前数组的索引 $arr=array(“one”=>”one”,”WWW”=>”two”,”three”,1,35,5,6,”four”) $newarr=Array_chunk($arr,2); //分解为了二维数组,每个数组里有两个元 Print_r($newarr);
php操作mysql执行数据库查询的一些常用操作罗列 php操作mysql步骤: 1.$connect=mysql_connect('localhost','root','123456') or die('数据库连接失 败。'mysql_error());链接mysql。 2.mysql_select_db('database',$connect)选择链接的数据库。 3.mysql_query('Set names gb2312'); $sql = "select * from blog_article";准备要查询的数据。 4.$datas = mysql_query($sql);执行sql查询。 5.$data = mysql_fetch_assoc($datas)得到查询到的缓存在内存中的一条数据。 6.print_r($data); 相同点:三个函数都是返回数据库中查询到的一行数据(说的再清楚点就是一条数据)。 不同点:mysql_fetch_assoc()用的是数据库中相应的字段名作为的key值(也就是数组下标 )如:filed['id']=1; mysql_fetch_row()用的是自动生成的数字(从0开始依次生成)作为的key值(也就是数组 下标)如:filed[0]=1; mysql_fetch_array()用的是自动生成的数字(从0开始依次生成)作为的key 值(也就是数 组下标),而且它还同时生成数据库中相应的字段名作为的key值(也就是数组下标)如: filed[0]=1,filed['id']=1;也就是说,mysql_fetch_array()将 mysql_fetch_assoc()和 mysql_fetch_row()查询到的结果合为了一体了。 mysql_fetch_object()与mysql_fetch_assoc()差不多。只是 mysql_fetch_assoc()返回的是 数组。mysql_fetch_object()返回的是object对象。
php array数组 有三种数组类型:数值数组带有数字 ID 键的数组关联数组数组中的每个 ID 键关联一个值多维数组包含一个或多个数组的数组 数值数组 数值数组存储的每个元素都带有一个数字 ID 键。 可以使用不同的方法来创建数值数组: 例子 1 在这个例子中,会自动分配 ID 键:$names = array("Peter","Quagmire","Joe"); 例子 2 在这个例子中,我们人工分配的 ID 键:$names[0] = "Peter";$names[1] = "Quagmire";$names[2] = "Joe"; 可以在脚本中使用这些 ID 键:
以上代码的输出:Quagmire and Joe are Peter's neighbors 关联数组 关联数组,它的每个 ID 键都关联一个值。 在存储有关具体命名的值的数据时,使用数值数组不是最好的做法。 通过关联数组,我们可以把值作为键,并向它们赋值。 例子 1 在本例中,我们使用一个数组把年龄分配给不同的人:$ages = array("Peter"=>32, "Quagmire"=>30, "Joe"=>34); 例子 2 本例与例子 1 相同,不过展示了另一种创建数组的方法:$ages['Peter'] = "32";$ages['Quagmire'] = "30";$ages['Joe'] = "34"; 可以在脚本中使用 ID 键:
很全的php数组操作方法 一、数组操作的基本函数 数组的键名和值 array_values($arr);获得数组的值 array_keys($arr);获得数组的键名 array_flip($arr);数组中的值与键名互换(如果有重复前面的会被后面的覆盖) in_array("apple",$arr);在数组中检索apple array_search("apple",$arr);在数组中检索apple,如果存在返回键名 array_key_exists("apple",$arr);检索给定的键名是否存在数组中 isset($arr[apple]):检索给定的键名是否存在数组中 数组的内部指针 current($arr);返回数组中的当前单元 pos($arr);返回数组中的当前单元 key($arr);返回数组中当前单元的键名 prev($arr);将数组中的内部指针倒回一位 next($arr);将数组中的内部指针向前移动一位 end($arr);将数组中的内部指针指向最后一个单元 reset($arr;将数组中的内部指针指向第一个单元 each($arr);将返回数组当前元素的一个键名/值的构造数组,并使数组指针向前移动一位list($key,$value)=each($arr);获得数组当前元素的键名和值 数组和变量之间的转换 extract($arr);用于把数组中的元素转换成变量导入到当前文件中,键名当作变量名,值作为变量值 注:(第二个参数很重要,可以看手册使用)使用方法echo$a; compact(var1,var2,var3);用给定的变量名创建一个数组 二、数组的分段和填充 数组的分段 array_slice($arr,0,3);可以将数组中的一段取出,此函数忽略键名 array_splice($arr,0,3,array("black","maroon"));可以将数组中的一段取出,与上个函数不同在于返回的序列从原数组中删除
PHP数组基本知识及常用函数 1)数组:就是一个有序的数据的集合; 使用一个名字可以存储多个数据; 数组使用的原因: 主要是如果存储儿百个数据时,不可能定义儿百个变量來操作; 2)数据的定义格式: 变量名=array (数据1,数据2,数据3、、、、); eg: $arr=array();空数组; $arr=array(l,2,3,4); 3)数组元素的访问: 数组元素:数组中的每个数组数据; 下标值:定义数组时系统口动的给数组中的每个元素分配的索引; 数组名[下标值]: 数组的判断:is_array():判断某个变量是否是个数组; 4]数组的赋值: 1数组定义时直接赋值: $arr=array(数据1,数据2,数据3。。。); 2数组定义后再赋值: 数据名【下标值】二值 5]数组的分类: (1)索引数组: ..... 数组中所有的数组元素都是使用下标來标示; (2)关联数组: ..... 数组元素中只要有一个数组元素使用名字来标示,这个数组就叫做关联数组;键名:就是数组中被标示元素的名字(符号); 格式: 变量名=array ("键名”=>数据1, ”键名怙〉数据2, ”键名,S数据3.....); 6]关联数组的访问方式: 数组名r键名”] 数组名r键名”卜数据1; 关联数组和索引数组混写: 1)如果使用数值当键名,系统会认为键名就是键值,如果后而又没有键名的元素,那么该数组元素在原有数组元素上加1; 2)如果数组中都是用键名标示的数组元素,只有个别元素是用键值标示的那么键值从0开始; 3)如果数组中的键值没用序列那么新添加的数组元素会在最大的键值上加1; 数组的遍历:就是显示或者得到数组屮的所有的数据; ******************************************************************************* *******************
课程教学大纲( - 学年第学期) 课程代码: 课程名称:PHP程序设计 编写人: 电话: 电子邮件: 编写日期: 教研室主任: (签名)教学部负责人审核:(签名)
《PHP程序设计》教学大纲 一、教学性质 本课程属于计算机软件开发专业的一门计算机编程语言基础课程,主要学习PHP程序设计语言的知识和应用,具体包括PHP概述、HTML基础、PHP语法基础、流程控制结构、PHP数组、PHP网站开发、MySQL数据库技术和PHP、MySQL数据库编程技术、面向对象技术、PHP安全与加密技术和B2C电子商务网站开发等。 二、教学目标 通过本课程的学习,课堂上先结合案例讲解PHP的基本语法等知识,再通过上机实践和课后练习,进行实际案例的开发。使学生能够更加全面地理解PHP语言的语法结构和运行原理,并能熟练地运用PHP和MySQL等知识进行项目开发。 三、教学内容 第1章PHP概 1.1 PHP入 1.1.1 PHP 技 1.1.2 PHP工作原 1.2 PHP环境搭 1.2.1 安装AppServ集成软 1.2.2 安装Zend Studio开发工具 1.3使用Zend Studio开发PHP程序 第2章网站开发基础
2.1 HTML知识 2.1.1 HTML基本标签 2.1.2 HTML表单控件 2.2 CSS样式知识 2.2.1 CSS编码位置与格式 2.2.2 CSS编码格式 2.2.3 CSS属性 2.2.4 DIV+CSS 2.3 JavaScript知识 2.3.1 JavaScript基础语法 2.3.2 JavaScript控制语句 2.3.3 JavaScript函数和事件处理机制第3章PHP语法基础 3.1 PHP标记与注释 3.1.1 PHP标记 3.1.2 PHP注释 3.2 PHP的数据类型 3.2.1 标量数据类型 3.2.2 复合数据类型 3.2.3 特殊数据类型 3.2.4 数据类型检测函数 3.2.5 数据类型转换函数
php如何去除数组中相同的元素 如何去除数组中相同的元素?在php手册中这样写,希望对大家有用,更多内容请关注网! array_unique( 4 >= 4.0.1) array_unique -- 移除数组中重复的值 说明 array array_unique ( array array) array_unique() 接受 array 作为输入并返回没有重复值的新数组。 注意键名保留不变。array_unique() 先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有后面的键名。这并不意味着在未排序的 array 中同一个值的第一个出现的键名会被保留。 注: 当且仅当 (string) $elem1 === (string) $elem2 时两个单元被认为相同。就是说,当字符串的表达一样时。 第一个单元将被保留。 例子 1. array_unique() 例子 [php] $input = array ("a" => "green", "red", "b" => "green", "blue", "red"); $result = array_unique ($input); print_r($result); ?> [/php] 【拓展阅读】PHP必须知道的容易出错的小细节 注意echo和print的区别 PHP中echo和print都是输出的作用,但是两者之间还是有细微的差别。echo输出后没有返回值,但print有返回值,当其执行失败时返回flase。因此可以作为一个普通函
数来使用,例如执行$r = print "Hello World"; 变量$r的值将为1。而且代码中echo语句 的运行效率要略快于print语句。 注意空字符串('')和NULL的区别 PHP中空字符串和NULL都是以值为0存储的,但是他们的类型并不一样,前者是string,而后者是NULL,可见字符串('')、NULL值相等但类型不等。 分清==(等于)和===(全等于)的区别 两者都属于比较运算符,==(等于)只比较值是否相等,而===(全等于)则不但比较值 是否相等,还会比较类型是否相等,它更为严格。 分清include与require的区别 include()与require()的功能也基本相同,但在用法上也有一些不同,include()是有 条件包含函数,而require()则是无条件包含函数。例如在下面代码中,如果变量$a为真,则将包含文件a.php。而require()则和include()不同,不管$a取何值,下面的代码都会 把文件a.php包含,比如: 在错误处理方面,使用include语句,如果发生包含错误,程序将跳过include语句,虽然会显示错误信息但是程序还是会继续执行。但是,require语句会提示一个致命错误。 注意isset和 empty的区别 empty是判断一个变量是否为“空”,而isset则是判断一个变量是否已经被设置。 分清self :: 和 this--> 的区别 在访问PHP类中的成员变量或方法时,如果被引用的变量或者方法被声明成 const(常量)或者static(静态属性),那么就必须使用域操作符::,而如果被引用的变量或者方法没有被声明成const或者static,那么就使用指向操作符->。 foreach循环后留下悬挂指针 这里有个问题很多人会迷糊。循环结束后,$value并未销毁,$value其实是数组中 最后一个元素的引用,这样在后续对$value的使用中,如果不知道这一点,会引发一些 莫名奇妙的错误:)看看下面这段代码: 上面代码的运行结果如下: 1,2,3
实验报告三 课程名称:网站系统开发(基于PHP) 成绩: 实验项目名称:函数与数组实验时间:2014-11-27 指导教师(签名): 班级:121 姓名:姜英俊学号:201210701116 实验目的: 1.掌握PHP自定义函数。 2.掌握函数回调。 3.掌握PHP数组的创建与输出。 4.掌握PHP数组元素的赋值及相关函数的应用。 实验环境: WAMP(Windows下具有的Apache、MySQL和PHP环境),或者LAMP(Linux下具有的Apache、MySQL 和PHP环境) 实验内容及过程: 1、自定义一个递归函数编写反序逐位输出一个整数的程序。 【注意:】不能利用strrev($s)输出反序。 2、参考课件的4.6.2 使用变量函数声明和应用的回调函数,写一个程序可以过滤0-30以内的质数和偶数。 3、自定义的两个数组,分别为索引数组和关联数组,每个数组必须至少有4个元素,使用print_r( )函数输出数组元素。 4、编写一个随机抽奖程序,示例运行结果如下:
5、定义一个三维数组$categories,用于存放Car,Van和Truck的产品信息,并使用foreach循环完成数组的遍历,显示结果如下。 实验结果及分析:
PHP数组详解 一、数组的分类: 1.索引数组:就是以数字为数组元素下标,以0开始。 2.关联数组:以字符串为数组下标。 二、数组的定义: 在PHP中定义数组非常灵活,不需要再创建数组的时候指定数组的大小,甚至不足要在使用数组前先行生命,也可以在同一个数组中存储多类型的数据,并且支持一维数组以及多维数组。 1.声明数组: A、直接赋值声明: B、使用array()语言结构新建数组: C、多维数组的声明:
内层为索引数组 内层为关联数组 三、数组遍历 在其它语言中大多是运用for循环逐个输出,而在PHP中即可以用for循环,也可以用数组特有的遍历方式foreach()。 1.for循环便利:它只能便利索引数组 2.foreach()遍历:即可以遍历索引数组,也可以便利关联数组。 A、一维数组遍历:
第一种语法格式 第二种语法格式 B、多维数组遍历:
3.联合使用list()、each()和while循环遍历数组 注意:这三个函数是另外一个比较简便的方式,但是他们只能便利索引数组。 A、each()函数:需要传递一个数组作为参数,返回数组中当前元素的键/值对并向后移动数组的指针到下一个元素的位置 B、list()函数:list()用一步操作给一组变量进行赋值,即使把数组中的一些变量, 它仅能用于数字索引的数组,并假定数组索引从0开始。 将echo()与list()合并使用 C、while循环便利数组
4.使用数组的内部指针控制函数遍历数组 Current():取得目前指针位置的内容资料 Key():读取目前指南针所指向资料的索引值 Next():将数组中的内部指针移到下一个单元 Prev():将数组的内部指针倒回一位 End():将数组的内部指针指向最后一个元素 Reset():将目前指针无条件移至第一个索引位置
数组array是一组有序的变量,其中每个变量被叫做一个元素。 定义和用法 可以用array()语言结构来新建一个数组。它接受一定数量用逗号分隔的key => value参数对。 array( [key =>] value, ... ) // key可以是数字或者字符串// value可以是任何值 用foreach 循环显示数组元素: "; echo "
"; } foreach($phpjc as $key=>$value) { echo $key.": ".$value; echo "
"; echo "
"; } ?> 用print_r() 函数输出数组:
print_r($phpjc); ?> 输出: word [1] => excel [2] => outlook [3] => access ) ?> count() 函数计算数组元素的个数 分割数组 array_chunk() 定义和用法 array_chunk() 函数把一个数组分割为新的数组块。 其中每个数组的单元数目由 size 参数决定。最后一个数组的单元数目可能会少几个。 可选参数 preserve_key 是一个布尔值,它指定新数组的元素是否有和原数组相同的键(用于关联数组),还是从 0 开始的新数字键(用于索引数组)。默认是分配新的键。 语法 array_chunk(array,size,preserve_key) 参数 描述 array 必需。规定要使用的数组。 size 必需。规定每个新数组包含多少个元素。 preserve_key 可选。可能的值: ? true - 保留原始数组中的键名。 ? false - 默认。每个结果数组使用从零开始的新数组索引。
第3章 PHP数组
3.1 数组的定义 一个变量可以理解为包含单个值的容器,而数组则正好相反,可以包含多个值。数组是数据值的集合,是一个可以存储一组或一系列数值的变量。一个数组可以具有许多个元素。每个元素都有一个值。PHP允许一个数组包括不同数据类型的元素,例如字符串、数字或另一个数组。一个包含其他数组的数组称为多维数组。 存储在数组中的值称为数组元素,数组中的元素是在索引(也称下标)的基础上被引用和操作的。根据索引类型的不同,PHP数组可分为数字索引数组和关联数组。 数字索引数组的索引是从0开始的整数,而关联数组的索引是字符串。实质上,在PHP内部所有的数组都被存储为关联数组,只是数字索引数组将索引特别指定到了数字。 注意: 关联数组与数字索引数组唯一的区别在于索引的类型。 与其他许多语言中的数组不同,PHP不需要在创建数组时指定数组的大小,甚至不需要在使用数组前先行声明。 3.2 数字索引数组 大多数编程语言都支持数字索引数组。数字索引数组是指数组元素的索引为整数的数组,索引从0开始,依次递增。当需要通过相对位置来确定数组元素时,通常使用数字索引数组。数字索引数组也称为枚举数组、标量数组或简单数组,图3-1是一个数字索引数组的示例。 其中数组名为$name,包括数组元素:“张明”、“李四”、“王小五”、“赵勤”和“李小平”。可以通过索引(下标)O来引用“张明”,通过索引1来引用“李四”,通过索引2来引用“王小五”,依此类推。要引用PHP中的元素,需要使用一对中括号([]),例如以下语句可以显示索引2的数组元素值: echo $name[2]; 注意: PHP的数字索引数组默认以0开始,而不是1,这与C、C++、Java等许多编程语言相同。数组最后一个索引号等于数组中元素个数减1 3.2.1 数字索引数组的初始化 由于PHP中数组没有大小限制,所以在为数组初始化的同时就一并对数组进行了声明。数字索引数组初始化通常有两种方法。其中之一是直接为数组元素赋值。例如要初始化如图3-1所示的数字索引数组,代码如下: $name[O]= "张明"; $name[1]= "李四";
PHP Array 函数 函数描述 array() 创建数组。 array_change_key_case() 返回其键均为大写或小写的数组。 array_chunk() 把一个数组分割为新的数组块。 array_combine() 通过合并两个数组来创建一个新数组。 array_count_values() 用于统计数组中所有值出现的次数。 array_diff() 返回两个数组的差集数组。 array_diff_assoc() 比较键名和键值,并返回两个数组的差集数组。 array_diff_key() 比较键名,并返回两个数组的差集数组。 array_diff_uassoc() 通过用户提供的回调函数做索引检查来计算数组的差集。array_diff_ukey() 用回调函数对键名比较计算数组的差集。 array_fill() 用给定的值填充数组。 array_filter() 用回调函数过滤数组中的元素。 array_flip() 交换数组中的键和值。 array_intersect() 计算数组的交集。 array_intersect_assoc() 比较键名和键值,并返回两个数组的交集数组。 array_intersect_key() 使用键名比较计算数组的交集。 array_intersect_uassoc() 带索引检查计算数组的交集,用回调函数比较索引。array_intersect_ukey() 用回调函数比较键名来计算数组的交集。 array_key_exists() 检查给定的键名或索引是否存在于数组中。 array_keys() 返回数组中所有的键名。 array_map() 将回调函数作用到给定数组的单元上。 array_merge() 把一个或多个数组合并为一个数组。 array_merge_recursive() 递归地合并一个或多个数组。 array_multisort() 对多个数组或多维数组进行排序。 array_pad() 用值将数组填补到指定长度。 array_pop() 将数组最后一个单元弹出(出栈)。 array_product() 计算数组中所有值的乘积。
PHP语言基础简单整理 1.开始结束标记 ... ?> 2.定义变量:$变量名例:$str="锦清笋";不需要指明数据类型 3.输出语句: (1)echo "hello world!";---echo命令 (2)print();输出语句,是函数,有返回值。输出成功返回1,失败返回0。 (3)printf();格式化输出字符串。例:printf("%d,%f",12,12.3); (4)sprintf();格式化拼接字符串,不是输出语句,只能将字符串拼接。 (5)print_r();输出数组、对象等复合数据类型 4.数据类型: (1)简单数据类型: Boolean 布尔型 string 字符串型 integer 整型 float 浮点型 (2)复合数据类型: array 数组 object 对象 (3)特殊数据类型: resource 资源 null 空值 5.数据类型转换: 在变量前加上括号括起来的类型名称即可。 6.检测数据类型: is_bool 检查变量是否是布尔类型 is_string .... is_float或is_double .... is_integer 或is_int .... is_null .... is_array .... is_object .... is_numeric 检测变量是否为数组或由数字组成的字符串 7.声明和使用常量: 定义语法:define(‘PRICE’,100); echo PRICE; 8.变量作用域: 局部变量:即在函数的内部定义的变量,其作用域是所在的函数 全局变量:即被定义在所有函数以外的变量,其作用域是整个php文件,但是在用户定义的函数内部不可用。想在用户定义的函数内部使用全局变量,要使用global关键词声明。例:$a=123; function test() { global $a;