|
|
|
พี่ๆช่วยย่อฟังก์ชั่นนี้ให้ทีครับ ยาวเหลือเกิน การทำงานของฟังก์ชั่นนี้ก็คือรับค่าเข้ามา |
|
|
|
|
|
|
|
การทำงานของฟังก์ชั่นนี้ก็คือ
รับค่าเข้ามา แล้วค้นหาตัวอักษรทีละตัว จาก A-Z
จากนั้นก็เก็บค่าจำนวนตัวอักษรที่มี เช่น A มี 3 ตัว ตัวแปล A ก็มีค่า 3
B มี 1 ตัว ตัวแปล B ก็มีค่า 1 จากนั้นก็ print เรียงตามตัวอักษรเริ่มจาก A-B
จากตัวอย่างก็จะได้ AAAB อะครับ
จากที่อธิบายมายาวๆ จุดประสงค์ของผมก็คือ เอาตัวอักษรมาเรียงใหม่จาก A-Z อะครับ
ที่ผมเขียนมามันก็ใช้ได้ตามความต้องการของผมนะครับ แต่มันยาว ใครเก่งๆ ย่อให้เหลือสั้นๆทีครับ
ขอบคุณครับ
๛อร่อยจัง๛
Code (PHP)
<?php
function asc($word){
$word=strtoupper($word);
$countword=strlen($word);
//******** A ********
$deleteA=str_replace("A","",$word);
$countdeleteA=strlen($deleteA);
$countA=$countword-$countdeleteA;
//******** B ********
$deleteB=str_replace("B","",$deleteA);
$countdeleteB=strlen($deleteB);
$countB=$countdeleteA-$countdeleteB;
//******** C ********
$deleteC=str_replace("C","",$deleteB);
$countdeleteC=strlen($deleteC);
$countC=$countdeleteB-$countdeleteC;
//******** D ********
$deleteD=str_replace("D","",$deleteC);
$countdeleteD=strlen($deleteD);
$countD=$countdeleteC-$countdeleteD;
//******** E ********
$deleteE=str_replace("E","",$deleteD);
$countdeleteE=strlen($deleteE);
$countE=$countdeleteD-$countdeleteE;
//******** F ********
$deleteF=str_replace("F","",$deleteE);
$countdeleteF=strlen($deleteF);
$countF=$countdeleteE-$countdeleteF;
//******** G ********
$deleteG=str_replace("G","",$deleteF);
$countdeleteG=strlen($deleteG);
$countG=$countdeleteE-$countdeleteG;
//******** H ********
$deleteH=str_replace("H","",$deleteG);
$countdeleteH=strlen($deleteH);
$countH=$countdeleteG-$countdeleteH;
//******** I ********
$deleteI=str_replace("I","",$deleteH);
$countdeleteI=strlen($deleteI);
$countI=$countdeleteH-$countdeleteI;
//******** J ********
$deleteJ=str_replace("J","",$deleteI);
$countdeleteJ=strlen($deleteJ);
$countJ=$countdeleteI-$countdeleteJ;
//******** K ********
$deleteK=str_replace("K","",$deleteJ);
$countdeleteK=strlen($deleteK);
$countK=$countdeleteJ-$countdeleteK;
//******** L ********
$deleteL=str_replace("L","",$deleteK);
$countdeleteL=strlen($deleteL);
$countL=$countdeleteK-$countdeleteL;
//******** M ********
$deleteM=str_replace("M","",$deleteL);
$countdeleteM=strlen($deleteM);
$countM=$countdeleteL-$countdeleteM;
//******** N ********
$deleteN=str_replace("N","",$deleteM);
$countdeleteN=strlen($deleteN);
$countN=$countdeleteM-$countdeleteN;
//******** O ********
$deleteO=str_replace("O","",$deleteN);
$countdeleteO=strlen($deleteO);
$countO=$countdeleteN-$countdeleteO;
//******** P ********
$deleteP=str_replace("P","",$deleteO);
$countdeleteP=strlen($deleteP);
$countP=$countdeleteO-$countdeleteP;
//******** Q ********
$deleteQ=str_replace("Q","",$deleteP);
$countdeleteQ=strlen($deleteQ);
$countQ=$countdeleteP-$countdeleteQ;
//******** R ********
$deleteR=str_replace("R","",$deleteQ);
$countdeleteR=strlen($deleteR);
$countR=$countdeleteQ-$countdeleteR;
//******** S ********
$deleteS=str_replace("S","",$deleteR);
$countdeleteS=strlen($deleteS);
$countS=$countdeleteR-$countdeleteS;
//******** T ********
$deleteT=str_replace("T","",$deleteS);
$countdeleteT=strlen($deleteT);
$countT=$countdeleteS-$countdeleteT;
//******** U ********
$deleteU=str_replace("U","",$deleteT);
$countdeleteU=strlen($deleteU);
$countU=$countdeleteT-$countdeleteU;
//******** V ********
$deleteV=str_replace("V","",$deleteU);
$countdeleteV=strlen($deleteV);
$countV=$countdeleteU-$countdeleteV;
//******** W ********
$deleteW=str_replace("W","",$deleteV);
$countdeleteW=strlen($deleteW);
$countW=$countdeleteV-$countdeleteW;
//******** X ********
$deleteX=str_replace("X","",$deleteW);
$countdeleteX=strlen($deleteX);
$countX=$countdeleteW-$countdeleteX;
//******** Y ********
$deleteY=str_replace("Y","",$deleteX);
$countdeleteY=strlen($deleteY);
$countY=$countdeleteX-$countdeleteY;
//******** Z ********
$deleteZ=str_replace("Z","",$deleteY);
$countdeleteZ=strlen($deleteZ);
$countZ=$countdeleteY-$countdeleteZ;
if($countA==1){
$a="A";
}
if($countA==2){
$a="AA";
}
if($countA==3){
$a="AAA";
}
if($countA==4){
$a="AAAA";
}
if($countA==5){
$a="AAAAA";
}
if($countB==1){
$b="B";
}
if($countB==2){
$b="BB";
}
if($countB==3){
$b="BBB";
}
if($countB==4){
$b="BBBB";
}
if($countB==5){
$b="BBBBB";
}
if($countC==1){
$c="C";
}
if($countC==2){
$c="CC";
}
if($countC==3){
$c="CCC";
}
if($countC==4){
$c="CCCC";
}
if($countC==5){
$c="CCCCC";
}
if($countD==1){
$d="D";
}
if($countD==2){
$d="DD";
}
if($countD==3){
$d="DDD";
}
if($countD==4){
$d="DDDD";
}
if($countD==5){
$d="DDDDD";
}
if($countE==1){
$e="E";
}
if($countE==2){
$e="EE";
}
if($countE==3){
$e="EEE";
}
if($countE==4){
$e="EEEE";
}
if($countE==5){
$e="EEEEE";
}
if($countF==1){
$f="F";
}
if($countF==2){
$f="FF";
}
if($countF==3){
$f="FFF";
}
if($countF==4){
$f="FFFF";
}
if($countF==5){
$f="FFFFF";
}
if($countG==1){
$g="G";
}
if($countG==2){
$g="GG";
}
if($countG==3){
$g="GGG";
}
if($countG==4){
$g="GGGG";
}
if($countG==5){
$g="GGGGG";
}
if($countH==1){
$h="H";
}
if($countH==2){
$h="HH";
}
if($countH==3){
$h="HHH";
}
if($countH==4){
$h="HHHH";
}
if($countH==5){
$h="HHHHH";
}
if($countI==1){
$i="I";
}
if($countI==2){
$i="II";
}
if($countI==3){
$i="III";
}
if($countI==4){
$i="IIII";
}
if($countI==5){
$i="IIIII";
}
if($countJ==1){
$j="J";
}
if($countJ==2){
$j="JJ";
}
if($countJ==3){
$j="JJJ";
}
if($countJ==4){
$j="JJJJ";
}
if($countJ==5){
$j="JJJJJ";
}
if($countK==1){
$k="K";
}
if($countK==2){
$k="KK";
}
if($countK==3){
$k="KKK";
}
if($countK==4){
$k="KKKK";
}
if($countK==5){
$k="KKKKK";
}
if($countL==1){
$l="L";
}
if($countL==2){
$l="LL";
}
if($countL==3){
$l="LLL";
}
if($countL==4){
$l="LLLL";
}
if($countL==5){
$l="LLLLL";
}
if($countM==1){
$m="M";
}
if($countM==2){
$m="MM";
}
if($countM==3){
$m="MMM";
}
if($countM==4){
$m="MMMM";
}
if($countM==5){
$m="MMMMM";
}
if($countN==1){
$n="N";
}
if($countN==2){
$n="NN";
}
if($countN==3){
$n="NNN";
}
if($countN==4){
$n="NNNN";
}
if($countN==5){
$n="NNNNN";
}
if($countO==1){
$o="O";
}
if($countO==2){
$o="OO";
}
if($countO==3){
$o="OOO";
}
if($countO==4){
$o="OOOO";
}
if($countO==5){
$o="OOOOO";
}
if($countP==1){
$p="P";
}
if($countP==2){
$p="PP";
}
if($countP==3){
$p="PPP";
}
if($countP==4){
$p="PPPP";
}
if($countP==5){
$p="PPPPP";
}
if($countQ==1){
$q="Q";
}
if($countQ==2){
$q="QQ";
}
if($countQ==3){
$q="QQQ";
}
if($countQ==4){
$q="QQQQ";
}
if($countQ==5){
$q="QQQQQ";
}
if($countR==1){
$r="R";
}
if($countR==2){
$r="RR";
}
if($countR==3){
$r="RRR";
}
if($countR==4){
$r="RRRR";
}
if($countR==5){
$r="RRRRR";
}
if($countS==1){
$s="S";
}
if($countS==2){
$s="SS";
}
if($countS==3){
$s="SSS";
}
if($countS==4){
$s="SSSS";
}
if($countS==5){
$s="SSSSS";
}
if($countT==1){
$t="T";
}
if($countT==2){
$t="TT";
}
if($countT==3){
$t="TTT";
}
if($countT==4){
$t="TTTT";
}
if($countT==5){
$t="TTTTT";
}
if($countU==1){
$u="U";
}
if($countU==2){
$u="UU";
}
if($countU==3){
$u="UUU";
}
if($countU==4){
$u="UUUU";
}
if($countU==5){
$u="UUUUU";
}
if($countV==1){
$v="V";
}
if($countV==2){
$v="VV";
}
if($countV==3){
$v="VVV";
}
if($countV==4){
$v="VVVV";
}
if($countV==5){
$v="VVVVV";
}
if($countW==1){
$w="W";
}
if($countW==2){
$w="WW";
}
if($countW==3){
$w="WWW";
}
if($countW==4){
$w="WWWW";
}
if($countW==5){
$w="WWWWW";
}
if($countX==1){
$x="X";
}
if($countX==2){
$x="XX";
}
if($countX==3){
$x="XXX";
}
if($countX==4){
$x="XXXX";
}
if($countX==5){
$x="XXXXX";
}
if($countY==1){
$y="Y";
}
if($countY==2){
$y="YY";
}
if($countY==3){
$y="YYY";
}
if($countY==4){
$y="YYYY";
}
if($countY==5){
$y="YYYYY";
}
if($countZ==1){
$z="Z";
}
if($countZ==2){
$z="ZZ";
}
if($countZ==3){
$z="ZZZ";
}
if($countZ==4){
$z="ZZZZ";
}
if($countZ==5){
$z="ZZZZZ";
}
$return="$a$b$c$d$e$f$g$h$i$j$k$l$m$n$o$p$q$r$s$t$u$v$w$x$y$z";
return $return;
}
?>
Tag : - - - -
|
|
|
|
|
|
Date :
2009-08-17 18:38:23 |
By :
monotakari |
View :
2425 |
Reply :
10 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แนะนำให้ใช้ loop ครับ ยาวอย่างนี้ error ทีหากันตาลาย แน่ๆ
ถนัด loop แบบไหนก็ใช้อันนั้น นะครับ
|
|
|
|
|
Date :
2009-08-17 18:42:27 |
By :
DownsTream |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยาวจริงๆ ดู scor bar นึกว่ามีคนตอบเกือบ ร้อยและ
ล้อเล่นนะครับบบบ
|
|
|
|
|
Date :
2009-08-17 18:45:24 |
By :
Sek-Artdrinker |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
<?php
$s = "aabbaababaccd";
function asc($s)
{
$arr = str_split(strtoupper($s));
sort($arr);
return implode("",$arr);
}
?>
|
|
|
|
|
Date :
2009-08-17 18:50:41 |
By :
lozomac |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ยาวได้ใจ ==> อร่อยจัง
สั้นได้ใจ ==>A-mac
|
|
|
|
|
Date :
2009-08-17 19:01:54 |
By :
DownsTream |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
หึๆ สั้นกับยาว
|
|
|
|
|
Date :
2009-08-17 19:31:40 |
By :
plakrim |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แค่นี้เองหรอ ทำไมมันสั้นจัง
ยังไงก็ขอบคุณครับ
ว่าแต่ str_split <== มันเอาไว้ทำอะไรหรอครับ
|
|
|
|
|
Date :
2009-08-17 19:59:46 |
By :
monotakari |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ถามอาจารย์ ผมสิครับ ผมมีอาจารย์ ที่มีความรู้ทุกอย่าง ครับ
อาจารย์ผมชื่อ google สุดยอดแห่งอาจารย์ ครับ
ฝากเนื้อฝากตัว เป็นศิษย์เค้าได้นะครับ หุ หุ หุ......
|
|
|
|
|
Date :
2009-08-17 20:03:26 |
By :
DownsTream |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
บอกแล้วว่าให้ถามพี่กู.....อิอิ
เล่นเอายาวซะเสียวเลย
|
|
|
|
|
Date :
2009-08-17 20:06:14 |
By :
panyapol |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
สั้นแต่มีคุณภาพนะครับ
str_split >> string + split >> ข้อความ + การแยก >> การแยกข้อความออกเป็นส่วนๆ
str_split() จะมีลักษณะการทำงานคล้าย toCharArray() ของ .Net อ่ะครับ
|
|
|
|
|
Date :
2009-08-17 21:35:03 |
By :
lozomac |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แต้งกิ้วหลายๆเจ้า
พอดีไปดูใน http://php.net มาแย้ว อิอิ
ยังไงก็ขอบพระคุณที่กรุณามาตอบนะจ้ะ
|
|
|
|
|
Date :
2009-08-17 22:26:31 |
By :
monotakari |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 01
|