0

このコードを参照してください:

<?php

$a = rand(1, 10000000000);
$b = "abcdefghi";

?>

$bのランダムな位置に挿入するにはどうすればよい$aですか?

4

5 に答える 5

4

「カジュアル」はランダムを意味すると仮定します。

<?php
$a = rand(1, 10000000000);
$b = "abcdefghi";

//get a random position in a
$randPos = rand(0,strlen($a));
//insert $b in $a
$c = substr($a, 0, $randPos).$b.substr($a, $randPos);

var_dump($c);
?>

上記のコードの動作: http://codepad.org/VCNBAYt1

編集:varsを逆にしました。私は「aをbに挿入し、

于 2012-06-07T16:38:54.103 に答える
1

$a を文字列として扱い、それを $b と連結することで可能だと思います。

$a = rand(1, 1000000);
$b= "abcd";
$pos = rand(0, strlen($a));
$a =  substr($a, 0, $pos).$b.substr($a, $pos, strlen($a)-$pos);

そして結果:

a=525019
pos=4
a=5250abcd19

a=128715
pos=5
a=12871abcd5
于 2012-06-07T16:41:36.293 に答える
0

{$b} を {$a} の上に配置して、{$b} に挿入できるようにする必要があります。例:

<?php
   $b = "abcdefghi";
   $a = rand(1, 10000000000);
   $a .= $b;
   echo $a;
?>
于 2012-06-07T16:33:32.917 に答える
0

$a を文字列にキャストし、strlenを使用して $a の長さを取得します。最大 $a の長さで rand を使用して、$a 内のランダムな位置を取得します。次に、substr_replaceを使用して、ランダム化した位置で $b を $a に挿入します。

于 2012-06-07T16:42:20.543 に答える
0

このように:

<?php
$position = GetRandomPosition();  // you will have to implement this function
if($position >= strlen($a) - 1) {
    $a .= $b; 
} else {
    $str = str_split($a, $position);
    $a = $str[0] . $b . implode(array_diff($str, array($str[0])));
}
?>
于 2012-06-07T16:37:43.913 に答える