> 백엔드 개발 > PHP 튜토리얼 > 문자열 PHP 정렬

문자열 PHP 정렬

王林
풀어 주다: 2024-08-29 13:05:19
원래의
606명이 탐색했습니다.

문자열 정렬은 PHP 언어에서 요구되는 방식으로 문자열을 정리하는 데 유용합니다. 문자열 정렬은 PHP 언어를 사용하여 주어진 문자열을 필요한 형식으로 정렬하는 문자열 방법입니다. 정렬 문자열은 PHP 기술의 정렬 기능에 따라 주어진 정렬 문자열을 정렬합니다. 정렬 문자열은 웹 애플리케이션의 요구 사항에 따라 사용 가능한 문자열을 분류하고 조합합니다. 정렬 문자열은 PHP 코딩 언어에서 요구되는 오름차순 또는 내림차순에 따라 문자열을 정돈합니다.

광고 이 카테고리에서 인기 있는 강좌 PHP 개발자 - 전문 분야 | 8개 코스 시리즈 | 3가지 모의고사

무료 소프트웨어 개발 과정 시작

웹 개발, 프로그래밍 언어, 소프트웨어 테스팅 등

다양한 방법을 사용하여 PHP에서 문자열을 정렬하는 방법은 무엇인가요?

문자열을 정렬하는 방법에는 여러 가지가 있습니다. 문자열 정렬 방법은 다음과 같습니다.

1. 문자열 정렬의 첫 번째 방법

String 배열로 변환하고 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. 문자열 정렬의 두 번째 방법

문자열 위치를 바꾸고 인수를 사용하여 문자열을 정렬합니다.

  • 정렬 문자열은 함수를 생성합니다.
function sortStringphp (place arguments here…) {write code here…}
로그인 후 복사
  • 문자열을 정렬하려면 문자열 변수를 생성하세요.
$sortstring = 'jhjabcdewyxdef';
로그인 후 복사
  • 주어진 문자열의 길이를 알기 위해 두 번째 문자열 변수를 만듭니다.
$stringlength;
로그인 후 복사
  • 문자열 요소의 위치를 ​​알기 위해 세 번째 문자열 변수를 생성하고 0으로 초기화합니다.
$currentposition;
로그인 후 복사
  • 이러한 문자열 변수를 함수에 인수로 배치하세요.
function sortStringphp(&$sortstring, $stringlength, $currentposition=0) {
write code here…
}
로그인 후 복사
  • 문자열의 현재 위치와 문자열의 길이가 같으면 문자열을 반환합니다.
if($currentposition == $stringlength){ return; }
로그인 후 복사
  • 문자열의 문자를 증가시키는 변수를 하나 생성하고 초기화하세요.
$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. 문자열 정렬의 세 번째 방법

Quicksort 알고리즘은 문자열을 정렬하는 데 사용됩니다.

  • 두 변수는 문자열의 분할을 만드는 데 도움이 되도록 만듭니다.
$stringleft = $stringright = '';
로그인 후 복사
  • 문자열의 길이를 측정하기 위해 생성하는 변수입니다.
$stringlength = strlen($sortstring)-1 ;
로그인 후 복사
  • 문자열 길이가 0이면 문자열을 반환하고 정렬을 중지합니다.
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 정렬

결론

  • 문자열 정렬은 사용자 요구 사항에 따라 문자열 데이터를 분류하고 웹 애플리케이션에 표시하는 데 도움이 됩니다.
  • 웹 애플리케이션 및 웹사이트의 순서에 따라 문자열을 정렬하고 표시하는 문자열입니다.

위 내용은 문자열 PHP 정렬의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿