var_dump
의 출력을 PHP로 구문 분석하여 배열을 만들려면 어떻게해야합니까?PHP에서 var_dump의 출력으로 배열을 만드는 방법은 무엇입니까?
답변
사용 var_export 당신은 또한 유효한 PHP 코드
인 표현을 원하는 경우$a = array (1, 2, array ("a", "b", "c"));
$dump=var_export($a, true);
echo $dump;
이
array (
0 => 1,
1 => 2,
2 =>
array (
0 => 'a',
1 => 'b',
2 => 'c',
),
)
가 배열로 그 다시 켜려면 표시됩니다, 당신은 사용할 수 있습니다 평가, 예를 들어, 당신이 비록 이렇게 할 이유
eval("\$foo=$dump;");
var_dump($foo);
확실하지. PHP 데이터 구조를 어딘가에 저장하고 나중에 다시 만들려면이 작업에 더 적합한 serialize() 및 unserialize()을 확인하십시오.
이것은 잘못되었습니다. 그것은 배열을 생성하지 않고 단지 $ foo를 문자열로 만든다. $ foo는 파싱되어야하는 문자열 인 $ dump와 동일하다. –
정말 잘못이 아니에요. 시도 해봐. http://codepad.viper-7.com/7ATm27 –
아니요 작동하지 않습니다. outputtet 문자열을 취해서 처음 두 줄을 주석으로 처리하고 $ dump를 출력 된 문자열 (html 또는 text를 위축시키는)으로 설정하면 구문 오류가 발생합니다. var_export-ed 변수를 사용하고 이미 var_dump-ed 문자열 만 사용하는 경우는 다릅니다. – Seika85
아마도 개체를 배열로 변환하려고합니까? http://www.phpro.org/examples/Convert-Object-To-Array-With-PHP.html
var_export
은 eval
을 통해 실행할 수있는 PHP 코드를 만듭니다.
하지만 궁금한 점은 무엇입니까?
나는 비슷한 문제가있다. 결국 긴 runing 스크립트는 결국 큰 배열의 vardump를 생성한다. 어떻게 든 분석을 위해 다시 구문 분석해야했습니다. 내 솔루션은 다음과 같았습니다 :
cat log.stats |
sed 's/\[//g' |
sed 's/\]//g' |
sed -r 's/int\(([0-9]+)\)/\1,/g' |
sed 's/\}/\),/g' |
sed -r 's/array\([0-9]+\) \{/array(/g' >
log.stats.php
좋은 대답입니다. 유일한 문제는 문자열을 포함하는 값이있는 경우입니다. 그래서 그들은 '' – WonderLand
에 의해 래핑되지 않습니다. 확실히 내 특정 시나리오에서 작동하는 빠른 해킹이었습니다. 일반적으로 var_dump는 구문 분석하기가 끔찍하므로 가능할 때마다 다른 것을 사용합니다 (주로 json_encode). 당신은 문자열이 문제를 일으킬 것이라고 맞습니다. 슬래시 나 따옴표가 있으면 큰 문제가 발생합니다. var dump output (=>, [8] 또는 int (12))처럼 보이는 무언가가 있다면 보통입니다. :) – qbolec
- 1. PHP에서 텍스트 필드의 배열을 만드는 방법은 무엇입니까?
- 2. PHP에서 배열을 재정렬하는 방법은 무엇입니까?
- 3. org.apache.http.Header의 배열을 만드는 방법은 무엇입니까?
- 4. 이미지 배열을 만드는 방법은 무엇입니까?
- 5. 배열을 유연하게 만드는 방법은 무엇입니까?
- 6. 빈 배열을 만드는 방법은 무엇입니까?
- 7. 이미지 배열을 만드는 방법은 무엇입니까?
- 8. PHP에서 다차원 배열을 구성하는 방법은 무엇입니까?
- 9. PHP에서 다차원 배열을 반복하는 방법은 무엇입니까?
- 10. PHP에서 배열을 곱하는 가장 좋은 방법은 무엇입니까?
- 11. PHP에서 다차원 배열을 합리화하는 방법은 무엇입니까?
- 12. Perl을 사용하여 kstat -p의 출력으로 해시를 만드는 방법은 무엇입니까?
- 13. 포함 된 배열을 기반으로 PHP에서 배열을 정렬하는 방법은 무엇입니까?
- 14. VB.NET 또는 PHP에서 다차원 배열을 만드는 방법
- 15. Fortran에서 사용자 정의 배열을 만드는 방법은 무엇입니까?
- 16. YAML에서 빈 배열을 만드는 방법은 무엇입니까?
- 17. Matlab에서 컬러 이미지의 배열을 만드는 방법은 무엇입니까?
- 18. Perl에서 2D 배열을 만드는 방법은 무엇입니까?
- 19. 다른 배열에서 배열을 만드는 방법은 무엇입니까?
- 20. WPF에서 버튼 배열을 만드는 방법은 무엇입니까?
- 21. Powerbuilder에서 사용자 개체의 배열을 만드는 방법은 무엇입니까?
- 22. 배열을 통해이 루프를 만드는 방법은 무엇입니까?
- 23. VbScript에서 다차원 지그재그 배열을 만드는 방법은 무엇입니까?
- 24. Ruby에서 배열을 고유하게 만드는 방법은 무엇입니까?
- 25. matlab에 문자열 배열을 만드는 방법은 무엇입니까?
- 26. VB.NET에서 빈 배열을 만드는 방법은 무엇입니까?
- 27. 2에서 여러 개의 배열을 만드는 방법은 무엇입니까?
- 28. 부스트 행렬의 배열을 만드는 방법은 무엇입니까?
- 29. 루프를 사용하여 문자열에서 배열을 만드는 방법은 무엇입니까?
- 30. XML을 반복하고 배열을 만드는 방법은 무엇입니까?
'var_dump (array ($ var))'? – Fragsworth