2016-11-26 3 views
3

配列の値を大文字に変換するコードがいくつかあります。これは、PHP 5.6を使用している私のローカル開発サーバー上でうまく動作しますが、PHP 7.0を使用すると失敗します。何が失敗する原因ですか?array_filter on PHP 7

function make_uppercase(&$word) { 
    $word = strtoupper ($word); 
    return $word; 
} 

$fish = array (
     "hampala ampalong", 
     "hampala macrolipedota" 
); 
print_r (array_filter ($fish, "make_uppercase")); 
+2

間で異なる結果を持っている理由は、私は疑問に思ってたぶん、あなたは 'array_map'の代わりに、' array_filter'したいですか? – Pang

+0

この解決策を試す必要があります:http://stackoverflow.com/questions/11008443/how-to-convert-array-values-to-lowercase-in-php – deepak

+0

ああ。結果は異なるhttp://phpio.net/s/1bpu –

答えて

2

これを記述する必要があります。これはあなたの問題あなたがarray_mapの代わりarray_filterを使用する必要があります

function make_uppercase(&$word) { 
     $word = strtoupper ($word); 
     return $word; 
    } 

    $fish = array (
      "hampala ampalong", 
      "hampala macrolipedota" 
    ); 
    print_r (array_map ("make_uppercase", $fish ));