변수 이름을 포함하는 문자열을 선언하고 php에서 해당 변수를 자바 스크립트 평가와 같이 식별 할 수있게하고 싶습니다. 예 :php는 문자열에서 변수 이름을 추출합니다. javascript eval과 비슷합니다.
$ 값의 값이 "$ 값"이 아닌 문자열에서 끝나는 코드이므로이 코드가 작동합니다.
$value="some value";
$str="the value is $value";
echo $str;
//the value is some value
하지만 난이 기능 싶습니다 : $ str2가 할당 될 때 $ NEWVALUE이 존재하지 않았기 때문에
$str2="the new value is $newValue";
$newValue="something new";
echo $str2;
//the new value is something new
은 물론이 PHP에서 작동하지 않습니다. 어쨌든 php가 문자열에서 변수 이름을 가져올 수 있도록이 작업을 수행 한 다음 해당 변수의 값을 가져 옵니까? 그것은 자바 스크립트 평가와 비슷합니다. 읽어 주셔서 감사합니다!
사용법 : 나는 foreach 루프 내부에 html 블록을 구성 중입니다. 배열을 통해 반복되므로 루프 내부의 정보는 각 배열 요소의 키와 값입니다. 사용자가 입력 블록의 요소를 지정할 수 있도록 양식 객체에 대한 메서드를 작성했습니다. 이러한 요소 중 일부는 키에 대한 액세스를 원하고 일부는 값에 대한 액세스를 원합니다. 그래서 예를 들어
foreach($cars as $key=>$car)
{
echo "<input id='text$key' type='text' value='".$car["model"]."'><br>
\n<input value='choice$key' type='button' value='".$car["make"]."'>
<br><br>\n\n";
}
그렇게 말할 수, 나는이 즉시 생성 할, 그래서 문자열을 입력 makeCarForm라는 몇 가지 방법을 가지고 있다고
<input id="text0" type="text" value="Malibu"><br>
<input id="choice0" type="button" value="Chevy"><br><br>
<input id="text1" type="text" value="Escort"><br>
<input id="choice1" type="button" value="Ford"><br><br>
같은 것을 얻을 것이다
function makeCarForm($formString)
{
foreach($cars as $key=>$car)
{
echo $formString;
}
}
다음 내 문자열
$theFormString="<input id='text$key' type='text' value='".$car["model"]."'><br>
\n<input value='choice$key' type='button' value='".$car["make"]."'>
<br><br>\n\n";
그래서 나는
makeCarForm($theFormString);
같은 함수를 호출 할 수 있으며 위와 같은 HTML 출력을 얻을 것입니다. 이게 말이 돼? 내가 잘못된 방향으로가는거야?
문자열을 재 조립하기가 쉽지 않습니까? ['sprintf()'] (http://php.net/sprintf) – BlitZ
유스 케이스 란 무엇입니까? 아니요, 보간 표현식의 문자열 결과가 있으면 이전 상태 또는 변수 이름을 가져올 수 없습니다. 대신 printf 스타일의 자리 표시 자 체계를 사용하십시오. 또는 하위 문자열 검색, 또는 무엇을 묻고 있나. – mario
유스 케이스를 추가했습니다. – chiliNUT