2014-09-29 252 views
-1

我希望能夠創造像從逗號分隔字符串

$array = array("one", "two", "three"); 
用逗號分隔的字符串

我曾嘗試

陣列創建PHP數組創建一個數組。

當我使用

foreach($queue as $q) { 
    echo $q; 
} 

它只是顯示了從逗號分隔的字符串,而不是所有的項目的一個項目。

如果我使用我的代碼的第一部分($array = array("one", "two", "three");

然後使用foreach循環,它工作正常

$_GET["q"]one,two,three

UPDATE:

我完整的代碼是:

$_GET["q"] == '402,403'; 

$queue = explode(',', urldecode($_GET["q"]));; 

foreach($queue as $q) { 
     $asm = new AGI_AsteriskManager(); 
     if($asm->connect()) { 
       $result = $asm->Command("queue show $q"); 
     } 
     $asm->disconnect(); 

     foreach(explode("\n", $result['data']) as $line) { 
       if(preg_match("/talktime/i", $line) && !preg_match("/default/i", $line)) { 
         $pieces = explode(" ", $line); 
         echo $pieces[2]; 
       } 
     } 
} 

$pieces[2]只呼應一次 - 它至少應該呼應0但其只顯示0一次

+7

什麼是'$ _GET [ 「Q」]'的價值? – 2014-09-29 09:12:33

+2

請發佈您的字符串值 – TBI 2014-09-29 09:12:36

+1

你是什麼字符串? – 2014-09-29 09:14:42

回答

0

假設你的字符串是 「一,二,三」

<?php 
    $_GET["q"] = "one,two,three"; 
    $queue = explode(',', $_GET["q"]); 
    print_r($queue); 
?> 

輸出

Array 
(
    [0] => one 
    [1] => two 
    [2] => three 
) 
+1

這是什麼操作? – 2014-09-29 09:18:32

+0

它適用於我 – 2014-09-29 09:21:45

0

雖然通過URL傳遞了長整型值,但使用urlencode作爲便利編碼要在URL的查詢部分中使用的字符串時使用將變量傳遞到下一頁的方法。

$yourstring = "one,two,three"; // your string 
$final = urlencode($yourstring); // url encode it 
header("location:yourpage.php?q=$final"); // pass through URL 

嘗試使用urldecode編碼字符串解碼,以獲得在另一個頁面的URL參數,

$finalarray = explode(',', urldecode($_GET['q'])); 
+0

這仍然只顯示一個數組項。它仍然工作,如果我使用$ queue = array(「one」,「two」,「three」); – Charlie 2014-09-29 09:43:53

+0

@ Charlie..It正在爲我工​​作.. – Jenz 2014-09-29 09:48:44

+0

@ Charlie ..在爆炸後嘗試打印陣列並檢查你正在收到什麼? – Jenz 2014-09-29 09:50:14