ソート文字列 PHP

王林
リリース: 2024-08-29 13:05:19
オリジナル
585 人が閲覧しました

ソート文字列は、PHP 言語で必要な方法で文字列を整理する場合に便利です。ソート文字列は、PHP 言語を使用して、指定された文字列を必要な形式にソートするための文字列メソッドです。ソート文字列は、PHP テクノロジのソート関数に従って、指定されたソート文字列を配置します。ソート文字列は、Web アプリケーションの要件に従って、使用可能な文字列を分類して組み立てます。ソート文字列は、PHP コーディング言語で必要な昇順または降順に従って文字列を設定します。

広告 このカテゴリーの人気コース PHP 開発者 - 専門分野 | 8コースシリーズ | 3 つの模擬テスト

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

さまざまな方法を使用して PHP で文字列を並べ替えるにはどうすればよいですか?

文字列を並べ替える方法はたくさんあります。文字列をソートするこれらのメソッドは以下のとおりです。

1.ソート文字列

の最初のメソッド

文字列を配列に変換し、sort()メソッドを使用します。

  • コーディング ページで必要な値を使用して文字列を初期化します。
$sortstring = 'sadycetfimlog';
ログイン後にコピー
  • 文字列分割メソッドを使用して文字列を配列に変換します。
$stringndarray = str_split($sortstring);
ログイン後にコピー
  • ユーザーの要件に従ってソート文字列メソッドを使用します。
  • sort() メソッドを使用して、文字列を昇順で並べ替えます。
sort($stringndarray);
ログイン後にコピー
  • rsort() メソッドを使用して、文字列を降順で並べ替えます。
rsort($stringndarray);
ログイン後にコピー
  • implode メソッドを使用して配列を文字列に変換します。
$stringndarray = implode($stringndarray);
ログイン後にコピー
  • PHP 言語でソート文字列を返します。
echo $stringndarray;
ログイン後にコピー

例: 昇順または降順のソート文字列の例と出力。

<!DOCTYPE html>
<html>
<body>
<h3> Ascending Order of the Sort String </h3>
<?php
$sortstring = "sadycetfimlogb";
echo "given string is : <b>$sortstring </b><br/> ";
$stringndarray = str_split($sortstring);
sort($stringndarray);
$stringndarray = implode($stringndarray);
echo " sorting string in the ascending order: <b>$stringndarray</b><br/>";
?>
<h3> Descending Order of the Sort String </h3>
<?php
$sortstring = "bnhrzsadycetfimlog";
echo "given string is : <b>$sortstring </b><br/> ";
$stringndarray = str_split($sortstring);
rsort($stringndarray);
$stringndarray = implode($stringndarray);
echo " sorting string in the descending order: <b>$stringndarray</b>";
?>
</body>
</html>
ログイン後にコピー

出力:

ソート文字列 PHP

2.ソート文字列

の2番目のメソッド

文字列の位置を交換し、引数を使用して文字列を並べ替えます。

  • ソート文字列により関数が作成されます。
function sortStringphp (place arguments here…) {write code here…}
ログイン後にコピー
  • 文字列をソートするための文字列変数を作成します。
$sortstring = 'jhjabcdewyxdef';
ログイン後にコピー
  • 指定された文字列の長さを知るために 2 番目の文字列変数を作成します。
$stringlength;
ログイン後にコピー
  • 文字列要素の位置を知るために 3 番目の文字列変数を作成し、ゼロで初期化します。
$currentposition;
ログイン後にコピー
  • これらの文字列変数を関数に引数として配置します。
function sortStringphp(&$sortstring, $stringlength, $currentposition=0) {
write code here…
}
ログイン後にコピー
  • 文字列の現在位置と文字列の長さが等しい場合は、文字列を返します。
if($currentposition == $stringlength){ return; }
ログイン後にコピー
  • 文字列の文字をインクリメントして初期化する変数を 1 つ作成します。
$nextposition = $currentposition + 1;
ログイン後にコピー
  • 文字列の文字の位置を交換するアルゴリズムを使用します。
while($nextposition< $stringlength){
if($sortstring[$nextposition] < $sortstring[$currentposition]){
$tempstring = $sortstring[$nextposition];
$sortstring[$nextposition] = $sortstring[$currentposition];
$sortstring[$currentposition] = $tempstring;
}
$nextposition++;
}
ログイン後にコピー
  • メイン関数内での再帰を避けるには、再帰関数を使用します。
sortStringphp($sortstring, $stringlength, $currentposition+1);
ログイン後にコピー
  • PHP のソート文字列を返します。
sortStringphp($sortstring,strlen($sortstring));
echo $sortstring;
ログイン後にコピー

例:

<!DOCTYPE html>
<html>
<body>
<h3> Ascending Order </h3>
<?php
$sortstring = 'iamgoodinthisplace';
echo "the given string : <b> $sortstring </b> <br/>";
$stringlength;
$currentposition;
function sortStringphp(&$sortstring, $stringlength, $currentposition=0) {
$nextposition = $currentposition + 1;
while($nextposition < $stringlength){
if($sortstring[$nextposition] < $sortstring[$currentposition]){
$tempstring = $sortstring[$nextposition];
$sortstring[$nextposition] = $sortstring[$currentposition];
$sortstring[$currentposition] = $tempstring;
}
$nextposition++;
}
if($currentposition == $stringlength){
return;
}
sortStringphp($sortstring, $stringlength, $currentposition+1);
}
sortStringphp($sortstring,strlen($sortstring));
echo " the sorted string : <b> $sortstring </b>";
?>
<h3> Descending Order </h3>
<?php
$sortstring1 = 'iamgoodinthisplace';
echo "the given string : <b> $sortstring1 </b> <br/>";
$stringlength1;
$currentposition1;
function sortStringphp1(&$sortstring1, $stringlength1, $currentposition1=0) {
if($currentposition1 == $stringlength1)
return
$nextposition1 = $currentposition1 + 1;
while($nextposition1 < $stringlength1){
if($sortstring1[$nextposition1] < $sortstring1[$currentposition1]){
$tempstring1 = $sortstring1[$nextposition1];
$sortstring1[$nextposition1] = $sortstring1[$currentposition1];
$sortstring1[$currentposition1] = $tempstring1;
}
$nextposition1++;
}
sortStringphp1($sortstring1, $stringlength1, $currentposition1+1);
}
sortStringphp1($sortstring1,strlen($sortstring1));
echo " the sorted string : <b> $sortstring1 </b>";
?>
</body>
</html>
ログイン後にコピー

出力:

ソート文字列 PHP

3.ソート文字列

の3番目のメソッド

クイックソート アルゴリズムは文字列の並べ替えに使用されます。

  • 文字列のパーティションを作成するのに役立つ 2 つの変数が作成されます。
$stringleft = $stringright = '';
ログイン後にコピー
  • 文字列の長さを測定するために変数が作成されます。
$stringlength = strlen($sortstring)-1 ;
ログイン後にコピー
  • 文字列の長さがゼロに等しい場合は、文字列を返し、並べ替えを停止します。
if ($stringlength <= 0) {
return $sortstring;
}
ログイン後にコピー
  • 文字列の中央 (ピボット) を作成する変数を作成します。
$pivot = floor($stringlength/2);
ログイン後にコピー
  • 並べ替えアルゴリズムには do-while ループを使用します。
do{
write sort string code here..
}while(sort string condition…)
ログイン後にコピー
  • 文字列と中間の文字列変数の長さが等しい場合は、ブレークを停止し、次のループを続行します。
if ($stringlength == $middlestring){
continue;
}
ログイン後にコピー
  • 要件に応じて昇順または降順の並べ替えロジックを使用します。
if ($sortstring[$stringlength] >= $sortstring[$middlestring]) {
$stringleft = $stringleft.$sortstring[$stringlength];
} else {
$stringright = $stringright.$sortstring[$stringlength];
}
ログイン後にコピー
  • アルゴリズムに従ってソート文字列を返します。
return sortStringphp($stringleft).$sortstring[$middlestring].sortStringphp($stringright);
ログイン後にコピー
  • php 内のソート文字列を出力します。
$givenstring = sortStringphp ("goodtohaveacoffee");
echo " the sort string : <b>$givenstring</b>"
ログイン後にコピー

例:




Ascending Order

$givenstring"; ?>

Descending Order

$givenstring"; ?>
ログイン後にコピー

出力:

ソート文字列 PHP

結論

  • ソート文字列は、ユーザーの要件に応じて文字列データを分類し、Web アプリケーションに表示するのに役立ちます。
  • ソート文字列は、Web アプリケーションと Web サイトの順序に従って文字列を並べ替え、表示します。

以上がソート文字列 PHPの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート