目的要串成下列的URL,以便在view可以設定編輯的連結 http://drupal_test/drupal-7.26/?q=node/25/edit&destination=meeting-v01 一開始是簡單用下列的方式取得URL,但是實際連結後卻發現部份的字元變成亂碼 $linkurl= l(t('編輯'), 'node/'.$nid.'/edit&destination=meeting-v01') ; print $linkurl ; 實際上的URL變為 node/25/edit%26destination%3Dmeeting-v01, 其實它並不是亂碼,只是在URL中傳遞這些特殊符號時要使用編碼。 編碼的格式為:%加字元的ASCII碼,即一個百分號%, 後面跟對應字元的ASCII(16進位)碼值。所以空格的編碼值是「%20」。 不過這樣的URL實際應用在Drupal中是無法正確連結的。 因此對於函數l(),必須加上一些參數,以呈現正確的URL,程式碼如下: $linkurl = l(t('編輯'), 'node/'.$nid.'/edit',array( 'query' => array( 'destination' => 'meeting-v01' ), 'html' => TRUE ) ); print $linkurl; 'query'的陣列表示要附在「&」 後面的變數,其格式為「變數名稱」=> 「值」, 由上可知'destination' => 'meeting-v01'指的是destination=meeting-v01, 可以設定多個變數,只要將變數設定在'query'的陣列之中就可以了。 'html'表示啟用html格式 這樣就可以得到正確的node/25/edit&destination=meeting-v01的連結
文章標籤
全站熱搜
創作者介紹
創作者 keven 的頭像
keven

平凡的幸福(備站)

keven 發表在 痞客邦 留言(0) 人氣(41)