-1

私たちのサイトに投稿された復号化された文字列があります。

$data = "AQ487r3uiufyds.43543534|VISA|4539991602641096|123|12|15|123|USD|AARON|dr4387yicbekusglisdgc||ZYXW|1970|01|31|19070/01/31|NODIRECTION ROAD, 1111|7th floor apt 777|99999|NOWHERE|XX";

このデータを取得し、 で区切られた各セクションから変数を作成する必要があります|

4

4 に答える 4

5

お探しの機能はexplode. 文字列の配列を返します。各文字列は、文字列区切り文字 (2 番目の引数) によって形成された境界で分割することによって形成された 2 番目の引数の部分文字列です。

$data = "AQ487r3uiufyds.43543534|VISA|4539991602641096|123|12|15|123|USD|AARON|dr4387yicbekusglisdgc||ZYXW|1970|01|31|19070/01/31|NODIRECTION ROAD, 1111|7th floor apt 777|99999|NOWHERE|XX";
foreach (explode('|', $data) as $p)
    echo "$p<br>";

出力します:

AQ487r3uiufyds.43543534
VISA
4539991602641096
123
12
15
123
USD
AARON
dr4387yicbekusglisdgc

ZYXW
1970
01
31
19070/01/31
NODIRECTION ROAD, 1111
7th floor apt 777
99999
NOWHERE
XX
于 2013-04-27T20:14:16.257 に答える
3

文字列の構造がアプリオリにわかっていて、実際の名前付き変数 (単なる値の配列ではない) が必要な場合は、PHP のlist構文 (with explode) を使用します。

$data = "AQ487r3uiufyds.43543534|VISA|4539991602641096";

list($someCode, $cardType, $cardNumber)=explode('|', $data);

var_dump($someCode);
var_dump($cardType);
var_dump($cardNumber);

次に、一時配列 ( によって返されるexplode) を変数に格納する必要はありません。

値の配列が必要な場合explodeは、他の回答で提案されているように使用してください。

于 2013-04-27T20:12:21.603 に答える
1
$vars = explode('|', $data);
//echo $vars[0];
//echo $vars[1];
//$card_num = $vars[2];
print_r($vars);
于 2013-04-27T20:07:55.383 に答える
1

単に爆発()を使用してください。文字列の配列を返します。これは、必要に応じて作成した変数に割り当てることができます。次に例を示します。

// explode the data string separated by |
$data_array = explode("|", $data);
// assign variables
$cc_no = $data_array[0];
$cc_comp = $data_array[1];
// and so on ...
于 2013-04-27T20:11:59.703 に答える