繁体   English   中英

PHP通过循环生成“ ItemCode”

[英]PHP Generating “ItemCode” with loops

我的问题是下一个该系统可以正常运行,但是我有问题。 $randarray[$i]在loop1时只给出一个数字,这是因为$itemhex可以是8,16,24,32个字符长,但它总是被拆分,所以输出是:

1E10020F9865140000E000FFFFFFFFFF

1F10020F9865140000E000FFFFFFFFFF

8810020F9865140000E000FFFFFFFFFF

8D10020F9865140000E000FFFFFFFFFF

行的数量是可取的,但是其中的“随机”数是相同的,我该如何解决它具有不同的随机数呢?

如果loop1和$ itemhex的长度仅为8个字符,则表示其是okey,或者是loop2等。仅当循环或多个循环但$ itemhex的长度大于8个字符时才出现问题。

<?php
    $loop=1;
    $randarray=array();
    for($i=1;$i<=$loop;){
        unset($rand);
        $rand=rand(100000, 999999);
        if(!in_array($rand, $randarray)){
          $randarray[]=$rand;
          $i++;
        }
    }
    $itemhexzero='0000E000FFFFFFFFFF';
    $items = array();
    for($i=0;$i<count($randarray);$i++) {
       $test = array();
       $itemhex='1E10020F1F10020F8810020F8D10020F';
       $arr2 = str_split($itemhex,8);
       for($k=0;$k<=count($arr2)-1;$k++){
         $test []=$arr2[$k];
         $items []= $test[$k].$randarray[$i].$itemhexzero.'<br>';
       }
    }
    $itemcode=implode("",$items);
    echo $itemcode;
?>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM