zoukankan      html  css  js  c++  java
  • php中explode和implode函数

    php中explode和implode函数

    explode

    array explode ( string $delimiter, string $string, [ , $limit ] )
    

    函数返回由字符串组成的数组,每个元素都是string的一个子串,被字符串$delimiter作为边界点分割出来。

    参数说明

    limit

    如果设置了limit,且为正数,则返回的数组最多包含limit个元素,最后的那个元素将包含string的剩余部分。

    如果limit是负数,则返回除了最后的-$limit个元素外的所有元素。

    如果limit是0,则会被当做1。

    delimiter

    如果delimiter为空,则函数返回FALSE。如果delimiter不在string中,且limit为负数,则返回空数组。

    运行示例

    $str = 'hello,world,heiheihei,php';
    

    先来看看不设置limit的情况

    $arr = explode(',', $str);
    print_r($arr);
    

    运行结果1

    limit为正数时,limit设为1,最多返回1个元素。

    $arr = explode(',', $str, 1);
    print_r($arr);
    

    运行结果2

    limit为负数,limit为-1,返回最后的1个元素外的所有元素。

    $arr = explode(',', $str, -1);
    print_r($arr);
    

    运行结果3

    limit为0,当作1处理。

    $arr = explode(',', $str, 0);
    print_r($arr);
    

    运行结果4

    explode执行步骤

    1、接收参数,处理参数为空的情况

    2、创建函数中使用的局部变量

    3、根据limit的值调用不同的函数分隔字符串

    implode

    string implode ( string $glue, array $pieces )
    string implode ( array $pieces )
    

     将一个一维数组的值转换为字符串

    参数说明

    implode函数可以接收两种参数顺序。另外,如果第一个参数为数组而第二个参数为空,则第二个参数为默认值’‘。此函数可以看作是explode的逆向过程。

    当然,使用文档规定的顺序可避免混淆。

    运行示例

    $arr = array('hello', 'world');
    

    按照文档顺序参数

    $str = implode('-‘, $arr);// 输出"hello-world"
    

    第一个参数为数组

    $str = implode($arr); // 输出"helloworld"
    $str = implode($arr, '-'); // 输出"hello-world"
    

    implode执行步骤

    1、接收参数并赋值

    2、如果第二个参数为空,则判断第一个参数的类型是否为数组,如果不是,则报错。否则,则使用”“对glue赋值,使用其作为连接符。

    3、如果第二个参数不为空,那么,如果第一个参数是数组类型,则将第二个参数转换成字符串类型;否则,如果第二个参数是数组类型,则将第一个参数转换成字符串类型。

    4、调用php_implode函数做字符串的连接。

  • 相关阅读:
    Git Cannot rebase: You have unstaged changes.
    importError: DLL load failed when import matplotlib.pyplot as plt
    install tushare in python 3.6
    pd.qcut, pd.cut, df.groupby()等在分组和聚合方面的应用
    从池子里的beta看秋香, 个性迥异
    个股和股票池的beta系数的估算
    检验两个随机序列的beta系数
    spyder里的"查找文件里的特定字符串"非常方便
    地图上道路编号中的G S X Y
    场内的代码表, 感觉水很深
  • 原文地址:https://www.cnblogs.com/liyuspace/p/7647970.html
Copyright © 2011-2022 走看看