2017-12-05 1 views
-1

私は人々が好きな場所に入ることができる単一の場所フィールドを持っていますが、一般的には "Town、Initials"の形式で何かを入力します。だから、例えば、これらのエントリ..."Town comma Initials"という形式の単一文字列の特定の部分だけを大文字で入力しますか?

New york, Ny 
columbia, sc 
charleston 
washington, DC 
BISMARCK, ND 

が理想的になるだろうが...

New York, NY 
Columbia, SC 
Charleston 
Washington, DC 
Bismarck, ND 

もちろん、私は、最初の文字を処理するために、文字列にucfirst()を使用することができますが、これらは私がものです(彼らはすべてで行うことができる場合)の前に、すべてを小文字コンマ

  • 後...

    • 生かしすべてを行う方法がわかりませんコンマ(最初の文字以外)

    これは簡単に実行可能ですか、正規表現関数を使用する必要がありますか?

  • 答えて

    1

    あなたは単にそれを切り刻んで修正することができます。

    <?php 
    $geo = 'New york, Ny 
    columbia, sc 
    charleston 
    washington, DC 
    BISMARCK, ND'; 
    $geo = explode(PHP_EOL, $geo); 
    
    foreach ($geo as $str) { 
    
        // chop 
        $str = explode(',', $str); 
    
        // fix 
        echo 
        (!empty($str[0]) ? ucwords(strtolower(trim($str[0]))) : null). 
        (!empty($str[1]) ? ', '.strtoupper(trim($str[1])) : null).PHP_EOL; 
    } 
    

    https://3v4l.org/ojl2M

    あなたは正しい形式の入力をユーザーに信用しないでくださいけど。代わりに、すべての州の巨大なリストを見つけて、自動で入力してください。おそらくhttps://gist.github.com/maxrice/2776900のようなものです。

    関連する問題