2016-11-27 6 views
0

私はPHPを使用しますか?私はファイルから読んでいますが、次の文字をどこからでも削除したいと思います: ''と{}。php-ファイルを読み取っている間に文字を削除します

私はトリム機能を使用しようとしたが、文字「」、{と}」出力にまだ存在している:

$txt_file = file_get_contents('out.txt'); 
$rows  = explode(",", $txt_file); 
array_shift($rows); 

foreach($rows as $row => $data) 
{ 
    //get row data 
    $row_data = explode(':', $data); 
    trim($row,"'"); 
    trim($row,"{"); 
    trim($row,"}"); 
    $info[$row]['state']   = $row_data[0]; 
    $info[$row]['action']   = $row_data[1]; 
    echo $info[$row]['state'] . '<br />'; 
    echo $info[$row]['action'] . '<br />'; 
    echo '<br />'; 
} 

あなたはそれを行うにはどのように任意のアイデアを持っていますか? おかげ

+0

「しかし動作しません」は十分な問題記述ではありません。 [質問する方法](http://stackoverflow.com/help/how-to-ask)を読んで質問を編集して、希望する動作を含めることができます。 – ImportanceOfBeingErnest

+0

'str_replace'と' preg_replace'についていくつか調査してください。あなたの文字列の真ん中に "{"と "}"が現れるかもしれないので、 'trim'は良い考えではありません。しかし今、あなたの主な問題は、 'トリム'があなたの使っている方法で機能しないということです。 'trim'はトリムされた文字列を返します。このようにしなければなりません:' $ row = trim($ row、 "{"); ' – EhsanT

答えて

1

は、私はそれがある場合は、交換してくださいあなたは$row

から'{}を削除するとし

trim($row,"'"); 
trim($row,"{"); 
trim($row,"}"); 

$row = str_replace(['\'', '{', '}'], '', $row); 

注意して:トリム - ストリップthからの空白(またはその他の文字) e文字列の始めと終わり。さらに、トリムされたデータを変数に格納しなかったので、文字通りトリミングされたデータは得られません。 You want to replace characters wherever it is foundstr_replaceまたはpreg_replaceを使用してください。詳細についてはPHPマニュアルをチェックしてください

関連する問題