배열관련 질문드립니다.
본문
디비에 넣은 데이터 인되요
[{"id":"1693993170742","left":"55.46666666666666","top":"52.40185950413223","content":{"sh_name":"샵19","sh_info":"시공처리","sh_price":"100","sh_url":"","rslt_knd":"브레이크"}}]
이런형태로 된 데이터 인되요
항목별로 데이터 가져올려고 하는되요
고수님들 조언 부탁드립니다.
답변 4
$json = json_decode($data, true);
foreach ($json as $item) {
echo "id: " . $item['id'] . "<br>";
echo "left: " . $item['left'] . "<br>";
echo "top: " . $item['top'] . "<br>";
echo "sh_name: " . $item['content']['sh_name'] . "<br>";
echo "sh_info: " . $item['content']['sh_info'] . "<br>";
echo "sh_price: " . $item['content']['sh_price'] . "<br>";
echo "sh_url: " . $item['content']['sh_url'] . "<br>";
echo "rslt_knd: " . $item['content']['rslt_knd'] . "<br>";
}
어떻게 가져올려구 하는데요? 잘않되는는 그소스를 보여주셔요-- ;;;
일단은 ;;
json_decode() 이 함수는 문자열을 배열이나 객체로 변환해줍니다
$json_data = ‘[{“id”:“1693993170742”,“left”:“55.46666666666666”,“top”:“52.40185950413223”,“content”:{“sh_name”:“샵19”,“sh_info”:“시공처리”,“sh_price”:“100”,“sh_url”:“”,“rslt_knd”:“브레이크”}}]’;
이런식으로
그냥 자바스크립트로 문자열을 바로 받아서 배열 + 객체처리 해서 원히는 걸 빼면 되겠죠.
<?php
$my_db = '[{"id":"1693993170742","left":"55.46666666666666","top":"52.40185950413223","content":{"sh_name":"샵19","sh_info":"시공처리","sh_price":"100","sh_url":"","rslt_knd":"브레이크"}}]';
?>
<script>
my = <?php echo $my_db; ?>;
document.write(my[0]["id"]);
document.write("<br>");
document.write(my[0]["content"]["sh_name"]);
</script>
아래처럼 도트연산자로 받아도 똑같습니다.
<?php
$my_db = '[{"id":"1693993170742","left":"55.46666666666666","top":"52.40185950413223","content":{"sh_name":"샵19","sh_info":"시공처리","sh_price":"100","sh_url":"","rslt_knd":"브레이크"}}]';
?>
<script>
my = <?php echo $my_db; ?>;
document.write(my[0].id);
document.write("<br>");
document.write(my[0].content.sh_name);
</script>
항목별로 데이터 가져올려고 하는되요
==
Php에서 작업하시는 건가요?
답변을 작성하시기 전에 로그인 해주세요.