2017-05-03 37 views
1

我創建了一個用於將SQL數據導出到XML文件的PHP文件。不幸的是,一個小的事情需要做,我得到了堅持:使用PHP將SQL數據庫表導出爲XML

$jobtype=$xml->createElement("jobtype",htmlentities($row['jobtype'])); 
$jobposting->appendChild($jobtype); 

上面的代碼是可以正常使用,但在輸出XML文件,作業類型顯示是這樣的:

<jobtype>0</jobtype> 
<jobtype>1</jobtype> 
<jobtype>2</jobtype> 

(他們在數據庫中也顯示0-1-2值 - 當他們顯示在網站上時,組件顯示每個值的預定義工作類型,見下文)。

我想他們已經導出的XML文件中象下面這樣:

0: Full-time 
1: Part-time 
2: Internship 

有誰知道如何把「如果 - elseif的」標籤到PHP代碼把它轉換?提前致謝! :]

+0

它取決於你想要達到的目標。你正在創建一個API?如果是這樣的話,REST比XML更容易。你是否試圖實際導出你的數據,以便以後可以導入它?檢出mysql客戶端的--xml選項。 – e4c5

回答

0

你可以使用一個開關case語句此:

<?php 

switch ($row['jobtype']) { 
    case 0: 
     $type = '0: Full-time'; 
     break; 
    case 1: 
     $type = '1: Part-time'; 
     break; 
    case 2: 
     $type = '2: Internship'; 
     break; 
    default: 
     break; 
} 

$jobtype=$xml->createElement("jobtype",htmlentities($type)); 
$jobposting->appendChild($jobtype); 
+0

完美的作品,非常感謝你! ;] – weekender

0

您可以創建一個小功能:

function transcript($nb){ 
    if($nb == 0){ 
    $ret = "Full-time"; 
    }else if($nb == 1){ 
    $ret = "Part-time"; 
    }else if($nb == 2){ 
    $ret = "Internship"; 
    } 
    return $ret; 
} 

編輯:使用開關是另一個好方法

+0

感謝您的快速響應! ] – weekender