[英]Convert a string to a usable json string or array object
一個函數將兩個參數作為func($t,$stringt){}
其中$ t是整數, $stringt
是任何字符串, $stringt
的格式如下
for $t = 1;
$stringt = '({A,B,C,D,E,F},{(A,B),(B,C),(C,A),(E,D),(D,A),(F,A)})';
//or it can be
$stringt = '({A,B,C,D,E,F},{(A,B),(B,C),(C,A),(D,A),(B,A),(A,E),(F,A)})';
for $t = 2;
$stringt = '({A,B,C},{(A,B),(B,C),(C,A)}),({A,B,C,D,E},{(A,B),(B,C),(C,A),(D,A),(E,D),(A,E),(E,C),(D,B)})';
如何將這個簡單的字符串轉換為任何可用的json字符串
這樣說
$json = '[
[
[
"A", "B", "C"
],
[
[
"A" , "B"
],
[
"B","C"
],
[
"C","A"
]
]
],
[
[
"A", "B", "C", "D", "E"
],
[
[
"A","B"
],
[
"B","C"
],
[
"C","A"
],
[
"D","A"
],
[
"E","D"
],
[
"A","E"
],
[
"E","C"
],
[
"D","B"
]
]
]
]';
這樣我就可以達到所需的結果。 我正在尋找的輸出是這樣的
全部與第二組元素A組合
$array_a = array( array('A','B'),array('C','A'),array('D','A'),array('A','E'));
var_dump($array_a);
echo count($array_a);
對於所有值對都類似。
有沒有其他方法可以處理給定的輸入字符串,比如說要在第一個集合中然后在第二個集合和第n個集合中找到A(或其他任何一個)的所有值pare。
如果您對格式有把握,這對我有用:
$json = '({A,B,C,D,E,F},{(A,B),(B,C),(C,A),(E,D),(D,A),(F,A)})';
$json = preg_replace('/([^\(\)\{\}\[\],]+)/', '"$1"', $json);
$json = preg_replace('/[\{\(]/', '[', $json);
$json = preg_replace('/[\}\)]/', ']', $json);
$array = json_decode($json, true);
echo '<pre>';
print_r($array);
結果:
Array
(
[0] => Array
(
[0] => A
[1] => B
[2] => C
[3] => D
[4] => E
[5] => F
)
[1] => Array
(
[0] => Array
(
[0] => A
[1] => B
)
[1] => Array
(
[0] => B
[1] => C
)
[2] => Array
(
[0] => C
[1] => A
)
[3] => Array
(
[0] => E
[1] => D
)
[4] => Array
(
[0] => D
[1] => A
)
[5] => Array
(
[0] => F
[1] => A
)
)
)
但是,它對於包含[] {} () ,
任何一個的項目可能不起作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.