teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

補足の追加。

2016/04/10 05:21

投稿

kei344
kei344

スコア69625

answer CHANGED
@@ -2,7 +2,7 @@
2
2
  [http://php.net/manual/ja/function.array-walk-recursive.php](http://php.net/manual/ja/function.array-walk-recursive.php)
3
3
 
4
4
  ```PHP
5
- array_walk_recursive( $csv, function( &$d, $key ) {
5
+ array_walk_recursive( $csv, function( &$d, $key ) { // 配列の値を参照として渡している( &$d )
6
6
  //両端の空白文字の削除
7
7
  $d = trim( $d );
8
8
 
@@ -14,4 +14,10 @@
14
14
  $search = array( ",", '"', "\r\n" );
15
15
  $d = str_replace( $search, "", $d );
16
16
  });
17
- ```
17
+ ```
18
+
19
+ array_walk_recursive の返り値はTRUE/FALSEなので、上記例では配列の値を参照として渡しています。なので ``$csv`` が書き換わっているはずです。
20
+
21
+ (参考)
22
+ 【array_walk_recursiveで変更された値を取得する - tmegos blog】
23
+ [http://tmegos.hatenablog.jp/entry/2012/05/arraywalkrecursive.html](http://tmegos.hatenablog.jp/entry/2012/05/arraywalkrecursive.html)