php-array-functioncontinue-doing

41次阅读

共计 1551 个字符,预计需要花费 4 分钟才能阅读完成。

说明:
不做特殊说明都支持 php4,5,7
参考:https://www.php.net/manual/zh…

is_array (mixed $var) : bool
判断变量是否数组。
code:

$arr1 = array();
$arr2 = array('');
if(isset($arr1) && $arr1){print_r($arr1);
}
if(isset($arr2) && $arr2){print_r($arr2);
}

result:

Array
([0] => 
)

explode (string $delimiter , string $string [, int $limit] ) : array
用分隔符 delimiter 将字符串炸裂成数组。
参数:

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

注意:

  • 分隔符在前
  • 分隔符前、后没有字符的情况下,炸开的数组中用空字符串 ” 代替
  • 分隔符不能是空字符串,会触发 warning

code:

$str = '1,2,3,';
$arr = explode(',',$str);
print_r($arr);// 分隔符前后无字符,炸出空字符串
$arr = explode(',',$str,2);
print_r($arr);// 第三个 $limit 限制生成 arr 的数量
$str = '1';
$arr = explode(',',$str);
print_r($arr);// 没有分隔符炸成原字符串
$str = '';
$arr = explode(',',$str);
print_r($arr);// 空字符串和没有分隔符的情况一致,炸出空字符串
$arr = array_filter(explode(',', $str));
print_r($arr);//array_filter 对数组中的元素循环判断是否为 FALSE,是则删除。第二个参数也可以写 callback 回调函数。

result:

Array
([0] => 1
    [1] => 2
    [2] => 3
    [3] => 
)
Array
([0] => 1
    [1] => 2,3,
)
Array
([0] => 1
)
Array
([0] => 
)
Array
(
)
Warning:  explode(): Empty delimiter in D:\phpStudy\PHPTutorial\WWW\index.php on line 564

扩展:
preg_split (string $pattern , string $subject [, int $limit = -1 [, int $flags = 0]] ) : array
正则分隔字符串参考:https://www.php.net/manual/zh…

implode (string $glue , array $pieces) : string
用 glue 将一维数组的值连接为一个字符串。
参数:

  • glue 默认为空字符串,可以忽略
  • $pieces 是一维数组

注意:

  • 如果数组 $pieces 是空数组 array(),返回值是 ”
  • 如果 array 中有 numeric,最终也会转成 string

常用:

  • 拼接 sql 时,可以对 where_array 添加 ’ AND ‘ 拼接成 where 字符串,同样也可以拼接 insert values 的值

扩展:
http_build_query (mixed $query_data [, string $numeric_prefix [, string $arg_separator [, int $enc_type = PHP_QUERY_RFC1738]]] ) : string
使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。默认连接符是 &,生成格式为 key1=val1&key2=val2。常用于加签。
参考:https://www.php.net/manual/zh…

continue…

正文完
 0