数组

数组的定义:

js:存储多个相同类型数据 ,有序的数据;
php数组

  • 1,:索引数组,同js;
    声明:$arrName=array(元素值1,元素值2,...,元素值n);
    count(数组):获取数组的长度
';
//修改数组的值;下标存在则修改,不存在则添加值;跳过的位置不存在;有几个值,长度就统计几个值;
//js中不存在的值是 空/undefined;
$arrName[0]='123';
//查看数组的值,var_dump();查看的信息更全面;print_r();只看原数据;也可以查看变量
echo  '
';//原样输出;
print_r($arrName);
echo  '
'; //在尾部追加元素 $arrName[]='e'; print_r($arrName); ?>

数组遍历,foreach

    遍历数组,foreach(数组 as 变量名){
    语句块执行的次数又数组的长度决定
        语句块
    };
    需要输出下标的话:
    foreach(数组 as 变量名0=>变量名1){ //变量名0是下标,变量名1是值;
    语句块执行的次数又数组的长度决定
        语句块
    };
$item){//$index 代表下标,$item 每一个值; ?>

  • 2.关联数组声明array('key1'=>value1,'key2'=>value2,...,'keyn'=>valuen,)
    //keyn为数组元素对应的键名;

关联数组声明


value1,'key2'=>value2,...,'keyn'=>valuen,)
//keyn为数组元素对应的键名;
$message=array('title'=>'学习PHP','content'=>'HTML ,CSS等','name'=>'frank');
$keys=array_keys($message);//查看数组的每个自定义的索引;
print_r($keys);
$content=array_values($message);//查看数组的每个值;
print_r($content);
//修改值
$message['title']='学习HTML';//会覆盖前面的值;
print_r($message);
//增加值
//$message['data']='2017.2.15';//$message[]='2017.2.15';是复合数组,下标为0;
print_r($message);
//关联数组的循环
$key=array('title'=>'标题','content'=>'内容','name'=>'姓名');
foreach($message as $key=>$value){//$key代表每个自定义的索引;$value 是对应的值;
    ?>

key: value:

关联数组的值查找

 '红色','blue'=>'蓝色','yellow'=>'黄色','green'=>'绿色');
    if(empty($color)){
        //第一种方式
//        $color = array_keys($bgColors)[0];
//        echo $color;
//        echo current($bgColors);  //获取数组中的当前元素,当指针没有移动时当前元素是第一个元素
//        echo end($bgColors);  //获取数组中最后一个元素,、指针也移向最后一个位置
//        echo current($bgColors);
//        echo reset($bgColors); //获取数组中第一个元素,指针也移向第一个位置
//        echo next($bgColors); //获取数组中下一个元素,指针也移向下一个位置
//        echo prev($bgColors); //获取数组中上一个元素,指针也移向上一个位置
//        echo current($bgColors);
          $first = reset($bgColors);
          //array_search(元素值,数组名)----查找元素所在数组中对应的下标,没有找到返回false,找到对应的下标
          $color = array_search($first,$bgColors);
isset ()里面是数组的话是判断,变量是否声明;
    }
    ?>

多维数组

'小二','age'=>'34','sex'=>'女'),
    array('name'=>'小三','age'=>'33','sex'=>'男'),
    array('name'=>'小四','age'=>'23','sex'=>'女')
);
//访问数组
print_r($students[0]);
echo '
'; echo '访问第一个数组的name属性'.$students[0]['name'];//访问第一个数组的name属性; ?>

获取URL地址中的参数

浏览器的请求方式,get,post
get请求是数据是呈现在地址栏中,有大小限制,大约1024字节;
post 方法:传递数据大小与php.ini 配置有关,post_max_size,默认8M;

$_GET,$_POST是PHP设置的预定义数组,当没有相应参数时,数组为空;
$_POST:接收post请求时传递的参数;
$_GET:接收get请求时传递的参数;
print_r($_GET);//print_r($_POST);
form表单数据传递



数组相关函数

创建数组:range(10,20);
isset:判断数组是否有某个索引;
unset:销毁某个变量;

$number=range(10,20);//创建包含10至20之间数的数组,默认步长1;或者,range(20,10);
$number=range(10,20,2);//第三个值是步长;
$number=range(,'a','z',3);//英文字母也可以使用;

截取数组array_slice(原数组,startIndex,长度,bool是否保留原下标)

  • 长度不写,从起始位置到最后;
    长度值为负,则表示截取到倒数第几个;
    startIndex为负,从倒数位数开始;
    $max=ceil(count($number)/n):最大页码
    PHP:
    intval(变量);将变量转为整型,第一位遇到非数字,转为0;
    ceil(3.6);向上取整;
    floor(3.6);向下取整;
    js:
    向下取整:Math.floor(3.6);//3;
    向上取整:Math.ceil(3.6);//4;
    :超链接传入参数

分页

select :向URL传参;

分页




    
    
    
    Document
    


    $total?$total:$p;//传入的页数大于最大页数,和小于1时做处理;
        $stat=($p-1)*$limit;//页面起始位置
        $page=array_slice($number,$stat,$limit);
    ?>
    
首页 上一页 下一页 尾页

数组的增删查改

追加元素都是返回的数组的长度,删除元素都是返回删除的数组




你可能感兴趣的:(数组)