PHPでは、 str_shuffle()関数は文字列の文字順序をランダムに破壊し、 inplice()関数は文字列に要素をスプライスすることができます。これらの2つの関数の使用を組み合わせることで、一般的な要件は、最初に文字列の文字シーケンスを混乱させ、次に散在する文字を新しい文字列に再縫うことです。
この記事では、str_shuffle()とprode()を使用してこの操作を達成し、操作プロセスを解析する方法について詳しく説明します。
str_shuffle()は、文字列を引数として受け入れ、文字順がランダムに破壊された新しい文字列を返します。例えば:
<?php
$original = "abcdef";
$shuffled = str_shuffle($original);
echo $shuffled; // 可能な出力 "fbdcea" のようなランダムな注文文字列
?>
この関数は、文字列の文字を直接再配置し、出力はまだ文字列形式です。
inprode()は通常、配列で使用され、指定されたコネクタに従って配列要素を文字列にスプライシングします。
<?php
$array = ['a', 'b', 'c'];
$string = implode("-", $array);
echo $string; // 出力 "a-b-c"
?>
コネクタが空の文字列""である場合、配列のすべての要素が連続文字列にシームレスにスプライスされます。
<?php
$string = implode("", $array);
echo $string; // 出力 "abc"
?>
str_shuffle()を使用して文字列を破壊する場合、結果の文字列を分割して操作し、結果の文字列を再縫います。通常のプロセスは次のとおりです。
str_shuffle()を使用して、ランダムな順序で文字列を生成します。
str_split()を使用して、文字列を配列に分割します(フォローアップ処理に便利)。
配列(フィルタリング、ソートなどのオプション)で操作を実行します。
inprode()を使用して、配列を文字列に再縫います。
次の例は、 str_shuffle()で文字列を台無しにし、それを配列に分割してから、 inteprode()で再縫う方法を示しています。
<?php
// 元の文字列
$original = "helloworld";
// 最初のステップ:かき混ぜる弦
$shuffled = str_shuffle($original);
echo "かき混ぜられた弦:".$shuffled."\n";
// ステップ2:文字列を配列に分割します
$array = str_split($shuffled);
// (ここでは、配列で任意の操作を実行できます,たとえば、ソート)
// sort($array);
// ステップ3:使用 implode 文字列を再縫います
$reassembled = implode("", $array);
echo "再スティッチ文字列:".$reassembled."\n";
?>
このコードでは、 str_shuffle()が文字列を順番にしているため、 str_split()は文字列を配列に変換し、最後にinpled() connectionless文字を使用して新しい文字列にスプライスします。
str_shuffle()は、乱れた文字列を直接返します。
文字のさらなる処理が必要な場合は、 str_split()を使用して配列に分割できます。
Inprode()を使用して、配列を文字列にスプライスします。
この組み合わせは便利で柔軟であり、ランダムな文字シーケンス、検証コード、その他のニーズを生成するために使用できます。
PHP文字列操作技術について詳しく知りたい場合は、 gitbox.net/ php-string-functions(例ドメイン名の置換の例)を参照してください。