<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
<link rel="stylesheet" type="text/css" href="Basedemo/DemoPage.css">
</head> <body>
<div id="main">
<div id="wrapper">
<h3>第一种数组创建方式:</h3>
<div id="content">
<?php
/*
array数组是一系列的键值对的集合,值可以是任何类型
*/
//分开赋值创建数组:
$arr1[0]=123;
$arr1[1]="word";
$arr1[2]=2.333;
$arr1[3]=true;
$arr1[4]=null; $len1= count($arr1);
echo '$arr的长度: '.$len1."<br/>";// echo 'for循环数组中的值: <br/>';
for ($i=0; $i < $len1; $i++) {
echo $arr1[$i].'<br/>';
} ?>
</div> <h3>第二种数组创建方式:</h3>
<div id="content">
<?php
$arr2=array (2,5,6,8,"face",false);
echo 'for循环数组中的值: <br/>';
for ($i=0; $i < count($arr2); $i++) {
echo $arr2[$i].'<br/>';
} ?>
</div> <h3>第三种数组创建方式:</h3>
<div id="content">
<?php $arr3=array ('bian'=>'编','cheng'=>'程','shi'=>'世','jie'=>'界');
echo $arr3['bian'].$arr3['cheng'].$arr3['shi'].$arr3['jie']; echo '<br/><p>foreach遍历循环数组中的值: </p>';
//PHP4.0引入的函数,适用范围更广($key和$val 是自定义变量)
foreach ($arr3 as $key=>$val) {
echo $key."=".$val."<br/>";
} ?>
</div> <h3>数组的细节(键):</h3>
<div id="content">
<?php
//没有指定下标或索引时,会找到此元素的前一个元素的索引加1
//
$arr4 = array(3=>"bad",25,33,"c"=>"cc");
$arr4[5]="被修改了";//如果数组中索引对应元素已经存在,重新赋值会覆盖原来的值
foreach ($arr4 as $key => $value) {
echo $key."=".$value."<br/>";
}
//输出结果:
// 3=bad
// 4=25
// 5=被修改了
// c=cc //当以true和false来做键名时,取值时,true的键为1,false的键为0
//当以null为键名时,取值时,可以""或null为键来取值
//当以小数来做为键时,取值时,将自动截断小数位,但以小数或整数为键都能取到值
$arr5[true]="值为true";
$arr5[false]="值为false";
$arr5[null]="值为null";
$arr5[12.33]="12.33"; echo $arr5[1]."<br/>";
echo $arr5[0]."<br/>";
echo $arr5[""]."<br/>";
echo $arr5[null]."<br/>";
echo $arr5[12.33]."<br/>";
echo $arr5[12]."<br/>"; //输出
//值为true
// 值为false
// 值为null
// 值为null
// 12.33
// 12.33 //print_r 显示数组信息:
echo "<p>print_r()显示数组信息:</p>";
print_r($arr5); echo "<p>var_dump()显示数组详细信息:</p><br/>";
var_dump($arr5); //注意:不能以数组或对象做为键,否则导致警告:lllegal offset type //以字符为键时,取值时的键也要为字符,且都要有引号(否则会当作常量)
//const tt=8;//加这句不报错,不加报错:Notice: Use of undefined constant tt - assumed 'tt'
$arrx[tt]=123;
echo $arrx[tt];
?>
</div> <h3>索引超过界线 和 数组的动态增长:</h3>
<div id="content">
<?php
//当取不存在的索引处的值时,会报错:Notice: Undefined offset
$arr6 = array(1,5,8);
echo $arr6[3]; //PHP中与其它语言不同的是:数组可以动态增长,可以动态添加新的键值对
$arr6[4]="新增加的值";
foreach ($arr6 as $key => $value) {
echo $key."=".$value."<br/>";
}
//输出:
// 1=5
// 2=8
// 4=新增加的值
?>
</div> <h3>数组的常用函数</h3>
<div id="content">
<?php
$arr7 = array(1,8,9,2,3,5,88,91,25); $a="555"; //获取数组的长度
echo count($arr7)."<br/>"; //9 //判定一个变量是否为一个数组
//如果为true,返回1,如果为false,返回""
echo is_array($a)."<br/>"; //""
echo is_array($arr7)."<br/>"; //1 //以任意字符分割字符串 explode
// $strCity="北京 上海 广州 武汉";
// $arr8 = explode(" ",$strCity); $strCity="北京#上海#广州#武汉";
$arr8 = explode("#",$strCity);
print_r($arr8);
echo "<br/>";
//Array ( [0] => 北京 [1] => 上海 [2] => 广州 [3] => 武汉 ) //unset()函数:销毁一个或多个元素、变量
$arr9 = array(1,2,3,4,5,6,7);
//删除元素5,索引不会重建
unset($arr9[4]);
unset($arr9[1],$arr9[2]);
print_r($arr9);//Array ( [0] => 1 [3] => 4 [5] => 6 [6] => 7 ) //数组运算符:
//数组联合:$arr1+$arr2 //
//是否相等:$arr1==$arr2 //全等于 ===//不等 !=//不全等 !===;
$arr10 = array('a'=>'one','b'=>'two');
$arr11 = array('a'=>'three','b'=>'foure','c'=>'five');
echo "<br/>";
print_r($arr10+$arr11);// Array ( [a] => one [b] => two [c] => five )
echo "<br/>";
print_r($arr11+$arr10);// Array ( [a] => three [b] => foure [c] => five )
echo "<br/>";
?>
</div> </div>
</div>
<div id="footer"><div class="tri"></div><h1>PHP基础 之 数组 创建遍历查找</h1></div>
</body>
</html>

PHP基础 之 数组(一)的更多相关文章

  1. 《利用python进行数据分析》读书笔记--第四章 numpy基础:数组和矢量计算

    http://www.cnblogs.com/batteryhp/p/5000104.html 第四章 Numpy基础:数组和矢量计算 第一部分:numpy的ndarray:一种多维数组对象 实话说, ...

  2. [.net 面向对象编程基础] (17) 数组与集合

    [.net 面向对象编程基础] (17) 数组与集合 学习了前面的C#三大特性,及接口,抽象类这些相对抽象的东西以后,是不是有点很累的感觉.具体的东西总是容易理解,因此我们在介绍前面抽象概念的时候,总 ...

  3. R语言基础:数组&列表&向量&矩阵&因子&数据框

    R语言基础:数组和列表 数组(array) 一维数据是向量,二维数据是矩阵,数组是向量和矩阵的直接推广,是由三维或三维以上的数据构成的. 数组函数是array(),语法是:array(dadta, d ...

  4. Java之--Java语言基础组成—数组

    Java语言基础组成-数组 Java语言由8个模块构成,分别为:关键字.标识符(包名.类名.接口名.常量名.变量名等).注释.常量和变量.运算符.语句.函数.数组. 本片主要介绍Java中的数组,数组 ...

  5. OC基础 可变数组与不可变数组的使用

    OC基础 可变数组与不可变数组的使用 1.不可变数组 1.1不可变数组的创建 //实例方法 NSArray *array = [[NSArray alloc] initWithObjects:&quo ...

  6. 利用Python进行数据分析——Numpy基础:数组和矢量计算

    利用Python进行数据分析--Numpy基础:数组和矢量计算 ndarry,一个具有矢量运算和复杂广播能力快速节省空间的多维数组 对整组数据进行快速运算的标准数学函数,无需for-loop 用于读写 ...

  7. Go语言基础之数组

    Go语言基础之数组 本文主要介绍数组(array)及它的基本使用. Array(数组) 数组是同一种数据类型元素的集合. 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化 ...

  8. 第二十四节:Java语言基础-讲解数组的综合应用

    数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...

  9. GoLang基础数据类型--->数组(array)详解

    GoLang基础数据类型--->数组(array)详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Golang数组简介 数组是Go语言编程中最常用的数据结构之一.顾名 ...

随机推荐

  1. 净捡软柿子捏--jQuery

    恩现在是在学习阶段,所以还只是一个小小的搬运工, 大部分参考自 http://www.w3school.com.cn/ 和http://www.zhangxinxu.com/ 超级好的两个学习网站,因 ...

  2. 原生JS中常用的Window和DOM对象操作汇总

    一.常用的Window对象操作 Window对象中又包含了document.history.location.Navigator和screen几个对象,每个对象又有自己的属性方法,这里window可以 ...

  3. 重写Object类中的equals方法

    Object是所有类的父亲,这个类有很多方法,我们都可以直接调用,但有些方法并不适合,例如下面的student类 public class Student { //姓名.学号.年纪 private S ...

  4. java字符串拼接与性能

    使用 Concatenation Operator (+) String concat method – concat(String str) StringBuffer append method – ...

  5. Android系统手机端抓包方法

    抓包准备 1. Android手机需要先获得root权限.一种是否获得root权限的检验方法:安装并打开终端模拟器(可通过安卓市场等渠道获得).在终端模拟器界面输入su并回车,若报错则说明未root, ...

  6. Objective -C学习笔记之字典

    //字典:(关键字 值) // NSArray *array = [NSArray array];//空数组 // NSDictionary *dictionary = [NSDictionary d ...

  7. struts2权威指南学习笔记:struts2引入自定义库

    问题: 在jsp页面中添加了s:property标签,然而在页面始终未展示 解决: 经过搜索学习,发现只要添加语句 1 <%@ taglib prefix="s" uri=& ...

  8. 9月13日JavaScript语句循环(100以备奇偶数、100以内与7先关的数、100以内整数的和、10以内阶乘、乘法口诀、篮球弹起高度、64格子放东西)

    3.循环 循环是操作某一个功能(执行某段代码). ①循环四要素: a 循环初始值 b 循环的条件 c 循环状态 d 循环体 ②for循环 a 穷举:把所有的可能性的都一一列出来. b 迭代:每次循环都 ...

  9. 面试题目——《剑指Offer》

    1.把一个字符串转换成整数——<剑指Offer>P29 2.求链表中的倒数第k个结点——<剑指Offer>P30 3.实现Singleton模式——<剑指Offer> ...

  10. js随机从数组中取出几个元素

    JS如何从一个数组中随机取出一个元素或者几个元素. 假如数组为 var items = ['1','2','4','5','6','7','8','9','10']; 1.从数组items中随机取出一 ...