当前位置:首页 » 编程语言 » php连续数字

php连续数字

发布时间: 2022-02-24 10:11:45

1. php重置数组为连续数字索引的几种方式

PHP重置数组为连续数字索引的几种方式

比如这样的一个php数组:

[php]view plain

  • $arr=array(

  • 1=>'apple',

  • 3=>'banana',

  • 5=>'orange'

  • );


  • 想要转换为这样的数组:

    [php]view plain

  • $arr=array(

  • 0=>'apple',

  • 1=>'banana',

  • 2=>'orange'

  • );


  • 1、推荐的方式 array_values 方法

    这样方式无论对普通数组还是关联数组都适用

    [php]view plain

  • <?php

  • $arr=array(

  • 1=>'apple',

  • 3=>'banana',

  • 5=>'orange'

  • );

  • print_r(array_values($arr));

  • $arr1=array(

  • 'name'=>'jerry',

  • 'age'=>16,

  • 'height'=>'18cm'

  • );

  • print_r(array_values($arr1));

  • 输出结果:

    [sql]view plain

  • [root@localhostphp]#phparray.php

  • Array

  • (

  • [0]=>apple

  • [1]=>banana

  • [2]=>orange

  • )

  • Array

  • (

  • [0]=>jerry

  • [1]=>16

  • [2]=>18cm

  • )


  • 2、使用 array_merge 方法

    该方法如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。所以只能适用于数字索引。

    [php]view plain

  • <?php

  • $arr=array(

  • 1=>'apple',

  • 3=>'banana',

  • 5=>'orange'

  • );

  • print_r(array_merge($arr));

  • $arr1=array(

  • 'name'=>'jerry',

  • 'age'=>16,

  • 'height'=>'18cm'

  • );

  • print_r(array_merge($arr1));


  • 输出结果:

    [php]view plain

  • [root@localhostphp]#phparray.php

  • Array

  • (

  • [0]=>apple

  • [1]=>banana

  • [2]=>orange

  • )

  • Array

  • (

  • [name]=>jerry

  • [age]=>16

  • [height]=>18cm

  • )


  • 3、循环遍历

    最原始的方式,臃肿且不够优雅,极力抵制。

    [php]view plain

  • <?php

  • functionresetArr($arr){

  • $temp=array();

  • foreach($arras$v){

  • $temp[]=$v;

  • }

  • return$temp;

  • }

  • $arr=array(

  • 1=>'apple',

  • 3=>'banana',

  • 5=>'orange'

  • );

  • print_r(resetArr($arr));

  • $arr1=array(

  • 'name'=>'jerry',

  • 'age'=>16,

  • 'height'=>'18cm'

  • );

  • print_r(resetArr($arr1));


  • That‘s it!

2. php 怎么用正则表达式从一段内容里提取出一段连续的10位数字

如果是连续的随机数
preg_match("/\d+/i",$str,$match);
$matches[0] 就是

如果是非连续的
$str = preg_replace("/\D/", “”, $str);
$str 就是

3. php判断该字符串是否含有连续的数字

用自定义函数处理 效率应该不高

函数体(字符串){

从第一位开始遍历 如果是数字就开始 验证过程
如果不是就下一个直到数字

验证过程(判断获得的数字){这个数字6次累加 结果作为字符串拼接 返回这个拼接结果}
看看这个拼接结果是否存在于初始字符串
(至于返回值怎么定就自己看吧)

}
这个函数不能处理大数哦 因为 12,13,14,15 这种数据收到进位影响 如果是10以上 可以考虑先转换进制再处理

4. php依次生成数字 1到10,每次生成一个数字,不重复 不循环,谢谢

你试着写一个数组,里面是1-10。$array=array(1,2,3,4);
然后shuffle($array);

再遍历输出出来就可以了

5. php中递增输出数字 例如:

$sql = "SELECT * FROM 表 where id='id’ " ORDER BY addtime asc;//按照时间升序
$result = mysql_query($sql)or die("错误:$sql");
$i = 1;//记录楼层数
while($rs= mysql_fetch_array($result))
{
<?php echo 姓名?>
<?php echo 帐号?>
我怎样来做 <?php echo $i; ?> 楼 //这里要每回复一次就是多少楼
$i++;//楼层数加1
}

6. PHP分行连续截取字符串如何判断数字

可以用正则表达式,例如:

<?php $str="我最爱看的《西游记》101页"; if (preg_match('/《(.*?)》/',$str,$reg)) echo '书名:'.$reg[1]; if (preg_match('/》(\d+)/',$str,$reg)) echo '页码:'.$reg[1];?>

7. php依次生成数字,每次一个数字,范围1-10,不循环

function NoRand($begin=1,$end=10,$limit=10){
$rand_array=range($begin,$end);
shuffle($rand_array);//调用现成的数组随机排列函数
return array_slice($rand_array,0,$limit);//截取前$limit个
}
print_r(NoRand());

8. PHP 输出一个数组中一个数值连续出现的次数(或者只输出连续出现的最大值)

$numberArray=array(0,0,1,0,1,1,1,1,0,0,0,1,0,0,0,0,0,1,1,1,0,0,1);
$str=implode('',$numberArray);
$Tokens=explode('1',$str);
$maxCount=0;
foreach($Tokensas$oneToken){
if($oneToken=='')
continue;
$length=strlen($oneToken);
if($length>$maxCount)
$maxCount=$length;
}
echo$maxCount;

这个方法只是针对你给的数据进行运算的 如果真实数据格式与此数据格式差异较大就不好使了

9. php按顺序生成数字,每次一个数字,范围1-100,循环生成

使用循环生成,假如你想生成512个数字,就可以像这样:

$num=1;//初始化一个变量为1
for($i=1;$i<=512;$i++)//这个是看你要生成多少个数字,然后循环生成
{
if($num>=100)
$num=1;//若变量的数字大于一百,则返回变成1
echo$num."</br>";//输出变量数字,即生成的数字,后面的</br>是换行
$num++;//然后将变量加1,即在前面生成的数字基础上加一
}

10. PHP中要生成5们随机数,如果生成的数字有三位数字连续是一样的,比如53332,3个3了,就重生成,怎么写呢

function getRand()
{
$res = "";
for ($i = 0; $i < 5; $i++)
{
$res .= rand(0, 9);
}//此循环使随机数的第一位也可为零
for ($i = 0; $i < 3; $i++)
{
if ($res[$i] == $res[$i + 1] && $res[$i] == $res[$i + 2])
return getRand();
}//因为只有5位数字,如果要看是否有三位连续,只需要从头检查到第三位,检查每一位的时候看之后的两位是否与第一位相同
return $res;
}
这样的话 效率最高 并且保留了第一位可为零的可能

热点内容
c语言解析图片 发布:2025-07-13 12:23:48 浏览:533
如何关闭安卓系统占用运存提示 发布:2025-07-13 12:23:46 浏览:979
如何在手机上加密wifi 发布:2025-07-13 12:21:34 浏览:540
sql注入攻击视频 发布:2025-07-13 12:18:19 浏览:463
别敲两次门保险柜密码是多少 发布:2025-07-13 12:14:24 浏览:856
ex加密码 发布:2025-07-13 12:13:29 浏览:517
饥荒服务器如何更新模组 发布:2025-07-13 12:08:36 浏览:34
java培训单位哪家好 发布:2025-07-13 12:06:56 浏览:959
华为平板迅雷存储位置 发布:2025-07-13 11:54:44 浏览:713
javaweb经典 发布:2025-07-13 11:50:25 浏览:417