Welcome to the website navigation,本站只接受合法正规的企业网站,欢迎站长们提交你的网站获得展示和流量有任何问题请联系站长,欢迎大家加入本站。

                
提交网站
  • 网站:76083
  • 待审:5
  • APP:577
  • 文章:304416
  • 会员:56004
文字内链包年1000元 文字内链包年1000元 文字内链包年1000元 AI办公网站 AI绘画工具 AIchat

名站导航为爱好php程序的朋友们提供php相关的教程知识。

有这么一个需求,一个数组$data = array(12, 43, 87, 45),要求写一个自定义函数,将其数组元素的数字单个拆开,最后形成的数组如下:$data = array(1, 2, 4, 3, 8, 7, 4, 5)。就是把原来的数组中的数都“拆”成“单”位的。5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

下面是自己写的一个函数:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

function splitStrToArray_mine($array)
{
	$new_array = array();
	foreach($array as $value)
	{
		$value = (string)$value;
		$len = strlen($value);
		for($i = 0; $i < $len; $i   ){
			array_push($new_array, $value{$i});
		}
	}
	return $new_array;
}

测试了一下,还是可以执行的,如下调用:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

//测试数组
$data = array(12, 43, 87, 45, 98, 74, 83, 67, 12);
var_dump(splitStrToArray_mine($data));

输出结果为:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

array(18) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "4"
  [3]=>
  string(1) "3"
  [4]=>
  string(1) "8"
  [5]=>
  string(1) "7"
  [6]=>
  string(1) "4"
  [7]=>
  string(1) "5"
  [8]=>
  string(1) "9"
  [9]=>
  string(1) "8"
  [10]=>
  string(1) "7"
  [11]=>
  string(1) "4"
  [12]=>
  string(1) "8"
  [13]=>
  string(1) "3"
  [14]=>
  string(1) "6"
  [15]=>
  string(1) "7"
  [16]=>
  string(1) "1"
  [17]=>
  string(1) "2"
}

虽然执行的不错,但是看看标准答案就会让你大吃一惊的,函数中就一句话,如下:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

//标准函数
function splitStrToArray($array)
{
	return str_split(implode("", $array));
}

于是写了脚本来测试自己的和标准的函数的运行效率差距,里面有一个 microtime_float() 函数用来提供精确时间的支持:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

//测量时间的函数
function microtime_float()
{
	list($usec, $sec) = explode(" ", microtime());
	return ((float)$usec   (float)$sec);
}
//自定义函数
function splitStrToArray_mine($array)
{
	$new_array = array();
	foreach($array as $value)
	{
		$value = (string)$value;
		$len   = strlen($value);
		for($i = 0; $i < $len; $i   ){
			array_push($new_array, $value{$i});
		}
	}
	return $new_array;
}
//标准函数
function splitStrToArray($array)
{
	return str_split(implode("", $array));
}
//测试数组
$data = array(12, 43, 87, 45, 98, 74, 83, 67, 12);
//开始测试
$mine_start = microtime_float();
splitStrToArray_mine($data);
$mine_end   = microtime_float();
//标准函数调用
$sta_start = microtime_float();
splitStrToArray($data);
$sta_end   = microtime_float();
echo "自己的函数调用运行时间为:" . (float)($mine_end - $mine_start) . " S <br />";
echo "标准的函数调用运行时间为:" . (float)($sta_end - $sta_start) . " S <br />";
$multiple = (int)((float)($mine_end - $mine_start) / (float)($sta_end - $sta_start));
echo "前者是后者的:" . $multiple . " 倍!";

来看看输出结果:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

自己的函数调用运行时间为:9.3936920166E-005 S 
标准的函数调用运行时间为:2.69412994385E-005 S 
前者是后者的:3 倍!

多次刷新页面的话,可以发现标准函数的执行效率基本上是自己的函数的 3 倍!当然,标准的函数中使用了 PhP程序 的内置函数: str_split(),implode(),所以要比自己写函数快得多,对 str_split() 函数没有印象?来看看手册解释:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

str_split -- Convert a string to an array(将一个字符串转换成数组)5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

函数描述:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

array str_split ( string string [, int split_length] )5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

Converts a string to an array. If the optional split_length parameter is specified, the returned array will be broken down into chunks with each being split_length in length, otherwise each chunk will be one character in length.5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

FALSE is returned if split_length is less than 1. If the split_length length exceeds the length of string, the entire string is returned as the first (and only) array element.5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

例 1. Example uses of str_split()5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

<?php
$str = "hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
?>

程序运行结果:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

Array
(
    [0] => h
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] =>
    [6] => F
    [7] => r
    [8] => i
    [9] => e
    [10] => n
    [11] => d
)
Array
(
    [0] => hel
    [1] => lo 
    [2] => Fri
    [3] => end
)


5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

名站网址导航

PhP程序实现各进制间的转换5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

从十进制向其它进制转换,用的是就用该数字不断除以要转换的进制数,读取余数。连接一起就可以了。下面是十进制转换为二进制、八进制、十六进制:5j0AIChat_企业网址导航_网址分类目录_企业黄页网址提交查询专业网站!

好了关于php程序的知识就说到这里希望可以帮助需要的朋友。,

标签:

分享到:

  admin

注册时间:

网站:0 个   APP:3 个  文章:0 篇

  • 76083

    网站

  • 577

    APP

  • 304416

    文章

  • 56004

    会员

赶快注册账号,推广您的网站吧!
文章分类
热门网站
最新入驻APP小程序

宝贝市场2023-02-08

宝贝市场——买手和卖家商品展示

夺宝助手2023-02-08

夺宝助手小程序,查看每日快夺宝平

查诚信2023-02-08

查诚信是一款免费的商业查询工具

车价天天报2023-02-08

快速连接汽车销售,获知汽车最新报

考勤助理小程序2023-02-08

上班签到考勤,实时定位,后台轻松

汽车报价大全查询2023-02-08

汽车报价大全查询提供最新汽车市