2012-05-17 2 views
3

PHP 초보자PHP 용 루프에서 문자열과 숫자 결합하기

누구든지 아래 구문과 관련하여 잘못된 점을 알려주십시오. 최대 4 개의 파일 - $ created_page1, $ created_page2 각각에 해당 페이지 제목 등이 있으며이를 루프에서 처리하려고합니다. 그러나 문자열과 루프 번호, 특히 $ created_page를 연결하려고 할 때마다 PHP는 흔들 리게됩니다. $ num_pages는 $ created_page1 또는 $ created_page2를 함수에 보내는 대신 문자열과 숫자를 정수로 변환합니다. 매우 기본적인 것이지만 나는 쉽게 이해할 수있는 도움이나 더 멋진 솔루션에 대해 매우 감사 할 것입니다. 미리 감사드립니다!

$addit_pages == 4; 

for ($num_pages=1;$num_pages<=$addit_pages ;$num_pages++) { 

replaceFileContent ($dir,$created_page.$num_pages,"*page_title*",$page_title.$num_pages); 
//replaceFileContent ($dir,$created_page2,"*page_title*",$page_title2); 
//replaceFileContent ($dir,$created_page1,"*page_title*",$page_title3); 
//replaceFileContent ($dir,$created_page3,"*page_title*",$page_title4);  
} 
+0

변수 PAGE_TITLE에 간다. ' "* page_title *"'무엇입니까? –

+4

흔들 거리는 소리가 얼마나 멀리 나옵니까? – Smandoli

+0

이 매개 변수의 내용은 무엇입니까? 나는 당신이 DATE와 INTEGER 같은 것을 섞어 놓고있는 것 같아요. – Sliq

답변

0

당신이 시도 할 수 :에 대한

$addit_pages == 4; 

($ NUM_PAGES = 1; $ NUM_PAGES < = $ addit_pages; $ NUM_PAGES ++) {

replaceFileContent ($ 말 일세, $의 created_page.strval을 ($ num_pages), "* page_title *", $ page_title.strval ($ num_pages)); // replaceFileContent ($ dir, $ created_page2, "* page_title *", $ page_title2); // replaceFileContent ($ dir, $ created_page1, "* page_title *", $ page_title3); // replaceFileContent ($ dir, $ created_page3, "* page_title *", $ page_title4);
}

는 PHP strval 함수는 문자열

0

에 정수를 만드는 나는 당신이 요구하는 것은 당신이 변수를 원하는 것입니다 $created_page1; $created_page2, $created_page3하지만 PHP는 아마 $created_page이 존재하지 않는다고 통지를 던지고있다 생각합니다.

당신은 변수 변수를 사용합니다 (그들은 호출하는지 이것이다?) 당신이 $$를 사용하는 경우

$addit_pages == 4; 

for ($num_pages=1;$num_pages<=$addit_pages ;$num_pages++) { 
    $createdVar = 'created_page'.$num_pages; 
    $titleVar = 'page_title'.$num_pages; 
    replaceFileContent ($dir,$$createdVar,"*page_title*",$$titleVar); 
} 

이 첫 번째 변수 $createdVar 다음 created_page1을 평가 created_page1에 당신이 입력 한 것처럼 것을집니다 평가

+0

참조 용 링크, "변수 변수"는 올바른 용어입니다 : http://us2.php.net/manual/en/language.variables.variable.PHP는 – Aknosis

1
$created_page1

변수 이름을 얻을 수있는 코드는해야한다 :

${'created_page'.$num_pages} 

변수에 액세스하기 전에 중괄호 안의 문자열을 평가해야하기 때문입니다.

이전 코드가 $ created_page 및 $ num_pages 변수에 액세스하려고 시도하고 해당 값을 문자열로 연결하기 만하면됩니다. 물론

, 같은 난 당신이 뭘하려고하는지 분명히 아니에요

${'page_title'.$num_pages} 
+2

와우 너무 많은 반응을 너무 빨리. domvoyt 나는 당신이 내가 잘하고있는 것을 알고, 꿈처럼 일했고 그것을 얻었다고 생각합니다. 그러나 모두에게 감사합니다 - 당신의 대답은 모두 제가이 일에 대해 손을 잡도록 도와줍니다. – rookieloops

+0

문제 없습니다. @Aknosis는 또 다른 접근 방식을 사용했습니다. 기본적으로 "변수 변수"를 사용하는 두 가지 방법. 하지만 deceze가 말했듯이, 배열을 사용하면 훨씬 더 효과적입니다. – domvoyt