我從api獲取一串文本,我需要將它分成3個變量,以便將其存儲在數據庫中,並稍後在腳本中使用它。
我查看過list()
但是由於我的字符串沒有用逗號隔開,所以在這種情況下不起作用。
我需要從OK:0989239037400167310:0.022
得到以下的輸出:
$var1 = 'OK';
$var2 = '0989239037400167310';
$var3 = '0.022';
什麼是我能做到這一點的最簡單方法是什麼?
我從api獲取一串文本,我需要將它分成3個變量,以便將其存儲在數據庫中,並稍後在腳本中使用它。
我查看過list()
但是由於我的字符串沒有用逗號隔開,所以在這種情況下不起作用。
我需要從OK:0989239037400167310:0.022
得到以下的輸出:
$var1 = 'OK';
$var2 = '0989239037400167310';
$var3 = '0.022';
什麼是我能做到這一點的最簡單方法是什麼?
您可以使用explode()
,因爲你有分開的部分共同的分隔符:
$result = 'OK:0989239037400167310:0.022';
$arr = explode(':', $result);
$var1 = $arr[0]; // OK
$var2 = $arr[1]; // 0989239037400167310
$var3 = $arr[2]; // 0.022
旁註:list()
需要一個數組,而不是一個逗號分隔字符串。您可以結合使用list()
與explode()
因爲explode()
產生一個數組:
$arr = explode(':', $result);
list($var1, $var2, $var3) = $arr;
您可以使用此功能explode
:
$str = "OK:0989239037400167310:0.022";
$result = explode(":",$str);
foreach($result as $k => $v){
${"var".$k} = $v;
}
echo '$var0 = '.$var0."\n";
echo '$var1 = '.$var1."\n";
echo '$var2 = '.$var2."\n";
我們知道我們會得到我們可以簡單的三個變量也可以做像
list($var1,$var2,$var3) = explode(":",$str);
你不能將數組轉換爲字符串 – Black
阿里你不能回顯數組?回聲$結果[0]等[1] ...或者你可以測試使用var_dump($結果) –
阿里現在已經晚了,有些時候你做錯了答案,並糾正你知道,順便說一句,我有記錄下來投票您。只是想建議 –
謝謝,這是完美的! :) – Borsn