2014-06-10 8 views
1

이 PHP 라인을 ColdFusion으로 변환하는 방법을 알려줄 사람이 있습니까?ColdFusion에서 배열을 만드는 방법

$dev_name = "xxx"; 
$cert_name = "yyy"; 
$url = "https://xxxx.com/"; 
$headers = array("X-BONANZLE-API-DEV-NAME: " . $dev_name 
        , "X-BONANZLE-API-CERT-NAME: " . $cert_name); 

배열입니다. 나는 이것을 시도했지만 실패했다.

<cfset dev_name="xxx"> 
<cfset cert_name ="yyy"> 
<cfset headers = {X-BONANZLE-API-DEV-NAME:"#dev_name#" 
        , X-BONANZLE-API-CERT-NAME:"#cert_name#"}> 

<cfdump var="#headers#"> 

</cfdump> 

답변

2

PHP 버전에서와 마찬가지로 키 이름을 인용해야합니다.

당신이 치는 문제는 키 이름에 "마이너스"문자가 포함되어 있다는 것입니다. 이 문제를 해결하려면 키 이름을 인용해야합니다.

또한 샘플 CFML 코드에서 구조체를 생성하게 될 것입니다. 원하는 구조체가 구조체 배열입니다.

그래서 뭔가 이것은 당신이 원하는 걸 얻을해야처럼 :

<cfset headers = [ {"X-BONANZLE-API-DEV-NAME":"#dev_name#"} 
        , {"X-BONANZLE-API-CERT-NAME":"#cert_name#"} ]> 

을 아니면 그냥 문자열 배열하려면 :

<cfset headers = [ "X-BONANZLE-API-DEV-NAME:" & dev_name 
        ,"X-BONANZLE-API-CERT-NAME:" & cert_name ]> 

참고 : 당신이 원하는 것을 나타내는 대괄호 배열과 중괄호는 구조체를 나타냅니다. JSON 표기법과 매우 비슷합니다. 문자열의 배열에 대한

<cfset headers = arrayNew(1)> 
<cfset headers[1] = structNew()> 
<cfset headers[1]["X-BONANZLE-API-DEV-NAME"] = dev_name> 
<cfset headers[2] = structNew()> 
<cfset headers[2]["X-BONANZLE-API-CERT-NAME"] = cert_name> 

또는

: 구조체의 배열을 위해

: 당신이 ColdFusion에서 이전 버전에있는 경우

당신은 이런 식으로 뭔가를 할 필요가있을 것이다 :

<cfset headers = arrayNew(1)> 
<cfset headers[1] = "X-BONANZLE-API-DEV-NAME:" & dev_name> 
<cfset headers[2] = "X-BONANZLE-API-CERT-NAME:" & cert_name> 
+1

일부 기능 만 버전 8 이상에서 실행됩니다. 왜냐하면 나는 버전 7에서 오류를 일으킬테니까. –

+0

나는 내 아이폰과 적절한 컴퓨터에 있지 않을 때 예제를 게시 할 것이다. –

+0

OK .. 시간이 오래 걸리네. 고마워. –