우리가 남이가? - 이게 제정신인지,,유유 채택완료

9년 전 조회 3,769

사정이 있다보니 

쓰기 및 업데이트 스킨에서

wr_1을 200개로 분할해 쓰고 있습니다. 유유,,,

장난이 아니에요,,

input은 여러분이 도움을 주시고 결정적으로 불량학생님 덕분에 해결했습니다. 감사합니다.

이거 앙되었으면 포기했을건데...해결되고 나니 또 사르르 욕심이 생기네요..ㅋ

$wr_1 = "$ext1_00|$ext1_01|$ext1_02|$ext1_03~~ ~~ $ext1_200"; 

생각해보세요,,유유

이것도 $ex1_filed = explode("|",$write[wr_1]); 

$ext1_00  = $ex1_filed[0];

$ext1_01  = $ex1_filed[1];

$ext1_02  = $ex1_filed[2];

...

...

200개 한다그 생각하면 이게 제정신인지...유유...qa찾아서 하다보니 그렇게 되었어요,,

이거(업데이트스킨, 쓰기상단)들도 줄이는 방법이 없을까요?

참고로----------------------------------

input에 00, 01, 02 이런식으로 되어 있습니다.

for($j=0; $j<200; $j++) { 

  $jNum = $j<10?sprintf("%02d",$j):$j;
  $jNum2 = $j+1;

답변 2개

채택된 답변
+20 포인트

짧게라......

일단 데이터 입력해서 제대로 되는지 확인을 위해서

Copy
<?php/* 데이터 불러오기 임의 테스트 (테스트 후 이부분삭제) */for($i=0; $i<200; $i++) {	$iNums = sprintf("%02d",$i);	$ex1_field[$i] ="사과".$iNums;}print_r2($ex1_field);/* 데이터 불러오기 임의 테스트 (테스트 후 이부분삭제) */ //$ex1_field = explode("|",$write['wr_1']); //테스트 종료후 이 값으로 불러오게끔 주석 해제?>

이렇게 하면 값이 사과00~ 사과199까지 해서 200개의 배열이 생성됩니다.

이제 줄이는 코드

Copy
<?phpfor($i=0; $i<200; $i++) {	$iNum = sprintf("%02d",$i);	$ex1Num = "ex1_".$iNum; //이부분이 변수만드는 부분	$$ex1Num = $ex1_field[$i]; //가변 변수에 값 집어 넣기 	echo($$ex1Num."<br/>"); //값을 제대로 불러 오는지 확인하는 부분      //가변 변수이므로 $$ex1Num 으로 사용한다는 점      //값이 정상이면 echo 문은 주석처리}?>

대충 이런식으로 하면 짧은 줄이 되겠네요

마지막으로 변수를 사용은 처음에 올려주신 값과 같습니다.

for구문에서 변수로 이미 저장이 되어 있으므로

$ex1_00 ~ $ex1_199 까지의 변수에 모두 들어갑니다.

각각의 변수 사용은 <?php echo $ex1_00;?> 이런식으로 사용합니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

감사합니다~ 해볼게요

댓글을 작성하려면 로그인이 필요합니다.

$ex1_filed = explode("|",$write[wr_1]);
$ext1_00  = $ex1_filed[0];
$ext1_01  = $ex1_filed[1];
$ext1_02  = $ex1_filed[2];


==>
for ($i=0;$i < 200;$i++) {
 
 $tmpData = $i;
 if ($i < 10) {
  $tmpData = "0" . $i;
 }
 
 $key = "ext1_" . $tmpData ;
 $value = $ex1_filed[$i];
 
 $$key = $value;

}

=============================

맞는지 모르겠네여. 

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

감사합니다~ 해볼게요~
감사합니다~

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고