2017-08-02 9 views
-3

私のサーバーの複数のデータを1つの.jsonファイルでコンパイルする必要があります。私が何を意味するか.jsonファイルへのデータの編集

:ここ

は、格納された値は次のとおりです。

https://www.design-24.eu/listener/1/catch.php 
https://www.design-24.eu/listener/2/catch.php 
...and so on. 

今、私はこの形式にその後、コンパイルする必要があります。

{"all":*all together*, "channels":{"1":*value1*,"2":*value2*,"3":*value3*,"4":*value4*,"5":*value5*,"6":*value6*}} 

ヘルプははるかに高く評価されます! :)

+0

それはあなたが求めているものは不明ですか?どのデータをコンパイルしますか?どこから値を取得していますか、どの形式ですか? etc – Enstage

+0

値はサーバーから出力される数値です。そして、私はそれらが示すようにこの.jsonファイルに入れられるようにする必要があります。 – NLXY

+0

すべてのサイトのリストがあり、それらのサイトはすべてあなたのサイトですか? –

答えて

0

これはあなたの問題を解決する必要があります。

$urls = array(); 
$urls[] = 'https://www.design-24.eu/listener/1/catch.php'; 
$urls[] = 'https://www.design-24.eu/listener/2/catch.php'; 
$urls[] = 'https://www.design-24.eu/listener/3/catch.php'; 
// add as many of the above as you want 

$x = count($urls); 
$arr = array(); 
$arr[ 'all' ] = 0; 
$arr[ 'channels' ] = array(); 

for ($z = 0; $z < $x; $z++) { 
    $json = file_get_contents($urls[ $z ]); 
    $json = preg_replace("/[^0-9]/", "", $json); 
    $arr[ 'all' ] = $arr[ 'all' ] + $json; 
    $arr[ 'channels' ][ ($z + 1) ] = $json; 
} 

$output = json_encode($arr); 

$f = fopen("result.json", "w"); // change result.json to the filename you want to write to 
fwrite($f, $output); 
fclose($f); 
+0

出力としてこれを取得します: {"all": "\ ufeff0 \ ufeff1 \ ufeff0 \ ufeff1 \ ufeff1 \ ufeff0" "\ ufeff0"、 "2": "\ ufeff1"、 "3": "\ ufeff0"、 "4": "\ ufeff1"、 "5": "\ ufeff1" "6": "\ ufeff0"}} – NLXY

+0

@NLXY正しい。これはあなたが提供したURLのjsonエンコードされた出力です。 –

+0

ああ、それは動作します!しかし、それは次のような数字を付け加えました:1 + 2 + 2 = 122 1 + 2 + 2 = 5 – NLXY