web-dev-qa-db-ja.com

C#のphp explode / implode-functionsの代替

.net-frameworkで分解/分解する同様の機能はありますか?

それとも自分でコーディングする必要がありますか?

41
Sheldon Cooper

String.Split() は爆発し、 String.Join() は爆発します。

65
scottm

現在の答えは完全には正しくありません。これが理由です。

_string[]_型の変数がある場合はすべて正常に機能しますが、PHPではKeyValue配列も使用できます。これを想定してみましょう。

_$params = array(
    'merchantnumber' => "123456789", 
    'amount' => "10095", 
    'currency' => "DKK"
);
_

そしてimplodeメソッドをecho implode("", $params);として呼び出します。出力は

_12345678910095DKK
_

そして、C#でも同じようにします。

_var kv = new Dictionary<string, string>() {
             { "merchantnumber", "123456789" },
             { "amount", "10095" },
             { "currency", "DKK" }
         };
_

String.Join("", kv)を使用します

_[merchantnumber, 123456789][amount, 10095][currency, DKK]
_

完全に同じではないですよね?

PHPが行うことは、次のようにコレクションの値のみを使用することです。

_String.Join("", kv.Values);
_

そして、はい、それはPHP implodeメソッドと同じです

_12345678910095DKK
_

テストできますPHP を使用してオンラインでコードhttp://WriteCodeOnline.com/php /

19
balexandre

PHPのexplodeメソッドとimplodeメソッドに対応する2つのメソッドがあります。

PHP explodeに相当するものは String.Split です。PHP implodeに相当するものは String.Join です。

9
Karel Frajták