zoukankan      html  css  js  c++  java
  • php 总结(8) 包含 数组遍历 超全局数组 数组排序 字符串函数

    1.include 和require          

    <?php 
    include 'head1.php'
    ?>
    

     include 报错简单 ,require 报错会阻止后面的程序运行 

    2.数组遍历
       foreach 和 list的形式  (while list each遍历数组)

       array_push($arr1, $key); 向数组中存值。
       $arr1[]=$key;

       数组长度  count($arr1)

    $arr=[
        0=>'user1',
        1 =>'20',
        5 =>'men'
    ];
    // while (list($k,$v)=each($arr)) {
    	// echo "$k";
    	// echo "<br>";
    	// echo "$v";
    // echo "<br>";
    // }
    foreach ($arr as $key => $value) {
    	echo "$value";echo "<br>";
    }
    

      a.数组随机取值
         

    $arr=[
    	'name'=>'user1',
    	'user'=>'20',
    	'sex' =>'men',
    	'ss'=>'asd'
    
    ];
    产生一个新数组 下标数字 只要 value
    foreach ($arr as $key => $value) {
    	$arr1[]= $value;
    	$tot++;
    }
    
    $n=mt_rand(0,$tot-1);  获取0-总数的随机数
    
    echo "<pre>";
    
    打印出 下标对应的值
    echo "$n "."$arr1[$n]";
    

     b.获取数组相同值出现次数    以及获取数组唯一值
        

    $arr=[1,2,3,4,5,6,7,1,2,3,1,2,3,5,4,5,6,6,4,3,8,7];
    
    echo "<pre>";
    print_r(array_count_values ($arr));   系统函数直接引用
    
    foreach ($arr as  $value) {
    	$arr2[$value]++;     只要一进来 键值就增加

    $arr2[$value]=$value; 获取数组唯一值 } echo "<pre>"; print_r($arr2);

     c.获取数组最大 最小值
     

    <?php 
    
    $arr=[3,2,5,2,1,3,7];
    function getmax($arr)
    {
    	# code...
    
    for ($i=0; $i < count($arr)-1 ; $i++) { 
    	if ($arr[$i]>$arr[$i+1]) {	
    		$c=$arr[$i+1];
    		$arr[$i+1]=$arr[$i];
    		$arr[$i]=$c;
    	}
    }
    return $arr[count($arr)-1];
    }
    
    echo getmax($arr);
    
    ?>
    

      

      

    3.超全局数组

      1.$_GET   获取地址栏的信息 并且存在数组中      
                  http://127.0.0.1:86/array/quanju.php?id=9&name=ls       
                  print_r($_GET);    
                  Array   (   [id] => 9      [name] => ls      )
           2.$_POST 安全传输数据 不在地址栏显示

           3.$_REQUEST 同时可以接收  GET 和POST 的数据

           收集数据碰到 多个选项的 用 [ ] 数组的形式收集


           4.$_SERVER的7种常用参数

    4.数组排序   

    sort() - 以升序对数组排序 改建key
    rsort() - 以降序对数组排序  改建key
    asort() - 根据值,保持索引
    ksort() - 根据键,保持索引
    arsort() - 根据值,保持索引
    krsort() - 根据键,保持索引

    // natsort($arr);
    // 自然数升序排名 保持索引关系  (支持字符串)
    // natcasesort($arr);
    // 忽略大小写的自然数排序  保持索引关系 (支持字符串)

    多数组排序
    array_multisort($arr2,SORT_ASC,$arr);   

    <?php 
    $arr=[
    	'aaaa',
    	'bb',
    	'ccccccccc',
    	'ddddddd'
    ];
    
    foreach ($arr as $key => $value) {
    	// 用值的长度 来创建一个新数组
    $arr2[]=strlen($value);
    }
    // 大数组 用小数组的关系来排序
    array_multisort($arr2,SORT_ASC,$arr);
    echo "<pre>";
    print_r($arr);
    
     ?>
    

      截取数组$arr2=array_slice($arr, 3,5);   不改变原数组

       截取数组$arr2=array_splice($arr, 3,5);   改变原数组  

     array_combine   数组键值合并
     array_merge      一个数组合并到一个的后面
     $arr2=implode($arr1,'-'); ; 数组用 ''-' 连接成字符串 【 可以用 join 替代】

      $arr='2016-1-02';
    $arr2=explode('-',$arr); 把字符串拆分为数组


    数组总结


    // 1.键值操作

    // 返回数组中所有的值  

    $arr=array_values($num);

    // 返回数组中所有的键值 

    $arr=array_keys($num);

    // 判断值在不在数组中

    $arr=in_array(b,$num);

    // 判断索引在不在数组中

    $arr=array_key_exists(1,$num);

    // 2.统计函数

    count($arr);

    // 所有值出现的次数

    array_count_values($num);

      // 删除数组中重复的值

    $arr=array_unique($num);

       // 3.排序函数

    sort();  rsort() ; 

    // 以降序对数组排序  改建key

    asort();    arsort(); 

    // 根据键,保持索引

    ksort();    krsort() ; 

    // 根据值,保持索引 

     natsort($arr); 

    // 自然数升序排名 保持索引关系  (支持字符串 严格区分大小写)

     natcasesort($arr); 

    // 忽略大小写的自然数排序  保持索引关系 (支持字符串 不区分)

      // 4.截取函数

    array_slice($arr, 0,3);

    // 下面是剪切函数

    array_splice($arr, 0,3);

    // 三个一起分割数组
    str_split($arr,3);

    // 5.拆分合并函数

    // 合并字符串

    $arr=join($num);

    // 以空格的方式把字符串分割为数组

    $num="asda asd as daas";

    $arr=explode(' ',$num );

       

       // 6.其他函数

    $arr=array_pop($num);

    // 剪切数组最后一个值

    $arr=array_shift($num);

    // 剪切数组前面一个值

    array_unshift($num, 10);

    // 前面插入一个值

    array_push($num, 10);

    // 最后插入一个数据

    shuffle($num);

    // 原数组 随机打乱

    // 数组求和 求乘积

    $arr=array_sum($num);

    $arr=array_product($num);

    range(1,2000);

    // 自动生成1-2000

    5.字符串函数:

     $str=ltrim($str); 去除首字符串   trim()去除首尾字符串, rtrim()去除尾字符串

      $str='|'.str_repeat('-----', 16);  重复输出 横线16次 

       strtolower() 转小写
    strtoupper()转大写
    ucfirst()首字母大写
    lcfirst()首字母大写
    ucwords()每个单词首字母大写

     $str=addslashes(htmlspecialchars($_POST['info']))  数据库防注入

     $arr=str_split($str,3); 字符串分割成数组

     str_shuffle()打乱数组

     substr ( $str, 2,4 ); 返回字符串的子串 一共4个

    $pos=strrpos($str, '/') 获取/在字符串中 最后一次出现的位置
    str_replace ( "w" , "100" ,  "$str" ); 替换字符

     strip_tags ( $text ); 从字符串中去除 HTML 和 PHP 标记

      strip_tags ( $text ,  '<p><a>' );  仅仅允许 p 和a标签

    addslashes($_POST['info'])留言自动添加转义符
    htmlspecialchars() 转实体 标签不展示
    htmlspecialchars——decode() 解实体 让标签展示

    $arr=str_split(str_shuffle($str),4)[0];

    $arr=substr(str_shuffle($str),0,4);

      6.路径处理函数

        dirname()返回路径中的目录部分
        basename — 返回路径中的文件名部分
        pathinfo — 返回文件路径的信息
         parse_url($str)  解析 URL,返回其组成部分

        
      

       7.字符串函数
    max()
    min()
    round() 四舍五入
    ceil() 进一位取整
    floor() 退一位取整
    mt_rand(100,999)取随机数

    #数学函数
    echo ceil(10.555);# 向上取整 
    echo floor(10.9);# 向下取整
    echo mt_rand(0,100);#求随机数
    echo round(11.8);#四舍五入
    
    
    #获取最大值 最小值
    echo max(1,3,5,7);
    echo min(1,3,5,7);
    echo max(array(1,3,300));
    #字符串
    trim(); #去除两边空格
    ltrim(); 
    rtrim();;
    strtolower(); #转小写
    strtoupper(); #转大写
    str_shuffle();#打乱
    str_split("Shanghai",3) #字符串分割到数组
    substr("Hello world",1,8) #函数返回字符串的一部分
    b_substr("驱蚊器", 0, 2,'utf-8');#函数返回字符串支持文字的一部分
    str_replace('45','a',$a); #替换字符
    $path = "/testweb/home.php"; 
    echo basename($path); #home.php #找路径中的文件名
    echo basename($path,".php"); #home
    pathinfo(img/index.php);#数组形式返回路径、目录或文件名称。
    parse_url# 更详细数组形式返回路径、目录或文件名称。
    
    ucfirst("hello World!"); #首字母大写
    ucwords() #每个单词首字母大写
    strlen("Shanghai");#字符串长度
    number_format("5000000",2,",",".")#格式化货币
    
    
    strip_tags();#删除 HTML 标签:
    htmlspecialchars() #标签不解析 转换实体
    htmlspecialchars_decode();#标签解析
    
    $str = "Hello World"; #填充字符串的右侧
    echo str_pad($str,20,".");  Hello World.........
    
    #时间函数
    
    #当前年月
    echo date("Y-m-d H:i:s");
    #当前时间戳
    echo time();
    #时间戳转换为日期
    echo date('Y-m-d H:i:s',1556548708);  
    #周几
    echo date('w');
    #日期转时间戳
    echo strtotime("2019-03-01")
     ?>
    

      

  • 相关阅读:
    树莓派关闭swap文件[浙大嵌入式系统]
    树莓派之objdump [浙大嵌入式系统]
    树莓派RAM[浙大嵌入式系统]
    温湿度传感器dht11的lcd显示[嵌入式系统]
    ucos II[嵌入式系统]
    MooTools 1.4 源码分析 Fx.CSS
    MooTools 1.4 源码分析 (关于Core、Type等模块分析)
    MooTools 1.4 源码分析 Fx.Tween
    MooTools Class.Mutators 如何建立一个我们自己的Mutator
    Javascript各种循环测试,达夫设备可用性分析
  • 原文地址:https://www.cnblogs.com/nice2018/p/10374627.html
Copyright © 2011-2022 走看看