2016-11-08 2 views
0

私はFIRST_NAME、次のヘルパーと雄弁アクセサを介したモデルの私のユーザーのLAST_NAMEトリミングしています:モデルに続いてUTF-8エラー( XA0)

function clean($string){ 
    return trim($string, " \t\n\r\0\x0B\xc2\xa0"); 
} 

を:

public function getFirstNameAttribute($firstname){ 
    return clean(ucwords(strtolower($firstname))); 
} 
public function getLastNameAttribute($lastname){ 
    return clean(ucwords(strtolower($lastname))); 
} 

名前の多くは、Excel ANは\ XA0をトリミング取り除くことができ、スペースを末尾たが、それは(a)のように、特殊文字をトリミングしようとすると、問題が来るから来ています。

削除しようとしましたが失敗しませんが、後ろのスペースは削除されません。

私はまた、ヘッダが文字セットがUTF-8

に任意のアイデアを設定したことを確認してみましたか?ありがとう。

は、私はちょうど目に見えないスペースがなくなってしたい:/

エラーメッセージ:

InvalidArgumentException in JsonResponse.php line 69: 
Malformed UTF-8 characters, possibly incorrectly encoded 

答えて

0

てみてくださいmb_strtolower()mb_convert_case()の代わりに、strtolower()ucwords()を使用します。

代わりのtrim()あなたはhereからこの機能を試すことができます:

function mb_trim($str) { 
    return preg_replace("/(^\s+)|(\s+$)/us", "", $str); 
} 
+0

、先端をありがとう試してみましたが、それはどちらか動作しません、それはトリムです。 –

+0

@CarlosFdev私は自分の答えを更新しました。 –

+0

も試してみましたが、\ xa0をトリムに追加した場合にのみ末尾のスペース{ "id":95063、 "first_name": "Xabier"}はすべて削除されません –