테스트 사이트 - 개발 중인 베타 버전입니다

조건에 맞으면 배열을 추가하고싶습니다. 채택완료

훈훈훈훈훈 5년 전 조회 2,086

{

    "아이디":"admin",

    "코드":"code",

    "메시지":[

        {

            "비밀코드":"secret_code",

            "받는사람":"id",

            "내용":"content",

        }

    ],

}

위와 같은 배열이 있습니다.

if (보내는시간) {

} 다음과 같이 보내는시간이라는 변수가 존재한다면 위 배열에 보내는시간이라는 배열을 아래와같이 추가하고싶습니다.

{

    "아이디":"admin",

    "코드":"code",

    "메시지":[

        {

            "비밀코드":"secret_code",

            "받는사람":"id",

            "내용":"content",

        }

    ],

    "보내는시간": "2019-12-09 09:00",

}

예를들면 이렇게 조건을 주어서 하면되는데 소스가 불필요하게 긴듯해서 줄일수있는 방법이 있을까요?

if (보내는시간) {

    {

        "아이디":"admin",

        "코드":"code",

        "메시지":[

            {

                "비밀코드":"secret_code",

                "받는사람":"id",

                "내용":"content",

            }

        ],

        "보내는시간": "2019-12-09 09:00",

    }

} else {

    {

        "아이디":"admin",

        "코드":"code",

        "메시지":[

            {

                "비밀코드":"secret_code",

                "받는사람":"id",

                "내용":"content",

            }

        ],

    }

}

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

답변 2개

채택된 답변
+20 포인트
플래토
5년 전

배열처리가 여러가지 패턴에 의해서 만들어져야하는데

 

위의 형태로 그대로는 PHP에서 원활하지 않을것 같구요

 

상황에 따라 가변적인 배열을 처리하는 방식을 샘플로 만들어봤습니다.

 

</p>

<p><?php

include_once "./_common.php";</p>

<p>

$arr = array();

$arr[] = array("아이디" => "admin");

$arr[] = array("코드"=>"code");

$msg[] = array("비밀코드"=>"secret_code"); //,"받는사람"=>"id","내용"=>"content");

$msg[] = array("받는사람"=>"id");

$msg[] = array("내용"=>"content");

$arr["메세지"] = $msg;

if (true) {  // 조건에 필요한 내용 

    $arr[] = array("보내는시간"=>"2019-12-09 09:00");

}</p>

<p>print_r2($arr);</p>

<p>

unset($arr);</p>

<p>$arr = array();

$arr[] = array(

        "아이디" => "admin",

        "코드"=>"code",

        "메세지"=> array(

                "비밀코드"=>"secret_code",

                "받는사람"=>"id",

                "내용"=>"content"

            )

    );

if (true) {  // 조건에 필요한 내용 

    $arr[] = array("보내는시간"=>"2019-12-09 09:00");

}</p>

<p>print_r2($arr);</p>

<p>

 

 

?>

 </p>

<p>

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

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

d
5년 전
  
$send_time에 보내는 시간을 넣어서 보내시되.. 없으면 공백으로 보내면 되겠습니다.
  {
        "아이디":"admin",
        "코드":"code",
        "메시지":[
            {
                "비밀코드":"secret_code",
                "받는사람":"id",
                "내용":"content",
            }
        ],
        "보내는시간": "$send_time",
    }
로그인 후 평가할 수 있습니다

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

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

로그인