6.PHP文字列

8343 ワード

文字列の処理の概要
文字列の処理方法
C言語では文字列はバイト配列として扱われる.Java言語では文字列はオブジェクトとして扱われます.phpは文字列を基本データ型として処理する.通常、文字列の処理は文字列のフォーマットに関連する.文字列の分割と接続、文字列の比較、および文字列の検索、一致、置換.
よく使われる文字列出力関数
一般的な出力文字列関数:echo( )――出力文字列print( )――出力文字列die( )――メッセージを出力し、現在のスクリプトを終了するprintf( )――出力フォーマット文字列sprintf( )――フォーマットされた文字列を変数に書き込む.
echo 'aaa','bbbb','ccc';//     
$link=@mysql_connect(“”,””,””)or die(“  ”)

printfとsprintfprintfsprintfともにフォーマット文字列:文字列変換形式:%戻りパーセント記号%b 2進数%c ASCII値による文字%d符号付き10進数%e継続可能カウント法(例えば1.5 e 3)%u符号なし10進数%fまたは%F浮動小数点数%o 8進数%s文字列%xまたは%X 16進数
テキストをフォーマットして出力します.
$name="hunte"; 
$age=25; 
printf("my name is %s, age %d", $name, $age);

説明:
  • 「%」とアルファベットの間に数字を入れて最大フィールド幅を表すことができる.①例えば:%3 dは出力3ビット整数数を示し、3ビット右揃え未満である.②% 9.2 fは出力場幅が9の浮動小数点数を表し、そのうち小数位は2、整数位は6、小数点は1位を占め、9位未満は右揃えである.③% 8 sは8文字を出力する文字列で、8文字未満で右揃えです.④文字列の長さ、または整数ビット数が説明のフィールド幅を超える場合は、その実長で出力します.⑤浮動小数点数は、整数部分の桁数が説明の整数ビット幅を超えると、実際の整数ビットで出力される.⑥小数部位数が説明の小数位幅を超えると、説明の幅で四捨五入して出力します.⑦出力値の前に0を追加するには、その場の幅の前に0を追加します.例えば、%04 dは、4ビット未満の数値を出力すると、その総幅が4ビットになるように前に0を補うことを示す.⑧文字や整数の出力形式を浮動小数点数で表すと、小数点以下の数字が最大幅、小数点以下の数字が最小幅となります.たとえば、%6.9 sは、6以上9以下の長さの文字列を表示します.9より大きい場合、9文字目以降の内容は削除されます.
  • 「%」とアルファベットの間に小文字lを入れて出力するのは長数です.①例えば:%ldは出力long整数②% lfは出力double浮動小数点数
  • 出力の左揃えまたは右揃えを制御することができます.すなわち、「%」とアルファベットの間に「-」番号を付けると、出力が左揃えであることを示します.そうでなければ右揃えです.①例えば:%-7 d出力7ビット整数左揃え②%- 10 s出力10文字左揃え
  • 一部の特殊規定文字①改行② f画面をクリアしてページを変更③ rリターン④ t Tab符⑤ xhhはASCIIコードを16進で表し、⑥hhは1から2までの16進数
  • sprintf関数はprintfと似ていますが、印刷ではなくフォーマットされた文字を返します.その他はprintfと同じです.
    一般的な文字列フォーマット関数
    1.スペースと文字列の埋め込み関数の除去
  • 関数:ltrim( )
  •       : string ltrim(string str[, string charlist] ); 
    

    戻り値:文字列この関数は、文字列内のプリアンブルスペース(whitespace)を削除するために使用されます.
  • 関数:rtrim( )(別名:chop()
  •       : string rtrim(string str[, string charlist] ); 
    

    戻り値:文字列この関数は、文字列の接尾辞スペースを削除するために使用されます.
  • 関数:trim( )文字列の先頭と末尾のスペースを切ります.
  •       : string trim(string str[, string charlist] ); 
    

    戻り値:文字列この関数は、文字列stringの先頭と末尾の空白文字除去後の文字列を返します.
  • 関数:str_pad()必要に応じて文字列を埋めます.
  •       :string str_pad ( string input, int pad_length [, string pad_string [, int pad_type]] ) 
    

    STR_PAD_LEFT文字列左補完STR_PAD_RIGHT文字列右補完STR_PAD_BOTH文字列両端補完
     
    

    2.文字列の大文字と小文字の変換
  • 関数:strtolower( )
  •       : string strtolower(string str); 
    

    この関数は、文字列strをすべて小文字にします.
  • 関数:strtoupper( )
  •       : string strtoupper(string str); 
    

    この関数は、文字列strをすべて大文字にします.
  • 関数:ucfirst( )文字列の最初の文字を大文字に変更します.
  •       : string ucfirst(string str); 
    

    この関数は、文字列strの最初の文字を返す文字の頭文字を大文字に変更します.
  • 関数:ucwords( )文字列ごとに最初の文字を大文字に変更します.
  •       : string ucwords(string str); 
    

    この関数は、文字列strを返します.各文字の頭文字はすべて大文字に変更されます.
    3.HTMLタグに関連付けられた文字列のフォーマット
  • 関数:nl2br( )
  •   :string nl2br ( string string )
    

    文字列内」をHTML改行に変換
  • 関数:htmlspecialchars()
  •   :string htmlspecialchars ( string string [, int quote_style [, string charset]] )
    
  • 関数:htmlentities()
  •   :string htmlentities ( string string [, int quote_style [, string charset]] )
    

    すべての非ASCIIコードを対応するエンティティコードに変換できます.
    bold";
    // Outputs: A 'quote' is bold
    echo htmlentities($str);
    // Outputs: A 'quote' is bold
    echo htmlentities($str, ENT_QUOTES);
    ?> 
    
  • 関数:string strip_tags()
  •   :string strip_tags ( string str [, string allowable_tags] )
    

    HTMLのタグ関数の削除
    Test paragraph. Other text';
    echo strip_tags($text); //Test paragraph. Other text
    //    

    echo strip_tags($text, '

    '); // :

    Test paragraph.

    Other text ?>

    4.その他の文字列フォーマット関数
  • 関数:strrev( )逆さま文字列.文字列を前後に反転します.
  •   : string strrev(string string);
    
  • 関数:strlen( )文字列長を取得する.
  •   : int strlen(string str); 
    

    この関数は、指定した文字列の長さを返します.
  • 関数:number_format()
  •   :string number_format ( float number [, int decimals [, string dec_point, string thousands_sep]] )
    

    フォーマット通貨、数値、時間など.
  • 関数:md5()暗号化関数
  •   :string md5 (string str [, bool raw_output] ) 
    

    文字列比較関数
    PHPでは、条件演算子(,==)を直接使用して比較できるほか、文字列を比較する方法がいくつかあります.バイト別文字列の比較strcmp();(全体比較が同じかどうか)strncmp();(比較長さ指定文字列比較)strcasecmp();(大文字と小文字を区別しない全列比較)自然ソート法による時行文字列の比較strnatcmp();文字列のあいまいな比較similar_text();(類似文字列の数を返します)
    文字列の分割とパッチワーク
  • explode--一つの文字列で別の文字列を分割
  •       :array explode ( string separator, string string [, int limit] )
    

    この関数は、各要素がstringのサブ列であり、文字列separatorによって境界点として分割された文字列からなる配列を返します.limitパラメータが設定されている場合、返される配列には最大limit要素が含まれ、最後の要素にはstringの残りの部分が含まれます.例:
        $pizza  = "piece1 piece2 piece3";
        $pieces = explode(" ", $pizza);
        echo $pieces[0];    // piece1
        echo $pieces[1];    // piece2
    
  • implode()小さな文字列のセットで大きな文字列を作成します.
  •       :string implode ( string glue, array pieces )
    

    1番目のパラメータglueは、2番目のパラメータpiecesの要素間に配置される文字列です.簡単なカンマで区切られた文字列は、次のように再構築できます.例:
    $array = array('lastname','email','phone');
    $comma_separated = implode(',', $array);
    echo $comma_separated; 
    //lastname,email,phone
    

    文字列の切り取り
  • 関数:substr( )部分文字列をとる.
  •      : string substr(string string, int start, int [length]); 
    

    戻り値:文字列本関数は、文字列stringのstartビットからの文字列をlength文字を取り出し、パラメータlengthを省略すると文字列の末尾に取り出します.startが負数の場合、文字列の末尾から抽出が開始されます.lengthが整数の場合、length文字が返され、負数の場合、最後からlength文字が取られたことを示します.
    文字列の検索:
  • 関数:strstr( )別名:strchr( )文字列の先頭から末尾までの文字列を返します.
  •       : string strstr(string haystack, string needle); 
    

    戻り値:文字列この関数は、haystackでneedleが最初に表示され、haystackが終了する文字列が返されます.needleが見つからない場合はfalseを返します.
  • 関数:strrchr()ある文字が最後に現れる位置を取得します.
  •       : string strrchr(string haystack, string needle); 
    

    この関数は、文字列haystackの文字needleの最後の出現位置を探し、文字列haystackの終了までの文字列を返します.needleが見つからない場合はfalseを返します.
  • 関数:strpos()文字列の中である文字が最初に現れる場所を探す.デフォルトは0からです.
  •       : int strpos(string haystack, string needle, int [offset]); 
    

    この関数は、文字列haystackの文字needleが最初に現れる場所を探します.指定した文字が見つからない場合はfalse値を返します.パラメータoffsetは、offsetから探すことを表すために省略できます.
  • 関数:strrpos( )文字列の最後にある文字が現れる場所を探します.
  •       : int strrpos(string haystack, char needle); 
    

    戻り値:整数この関数は、文字列haystackの文字needleが最後に現れる場所を探します.指定した文字が見つからない場合はfalse値を返します.
    文字列の置換str_replace()文字列置換、3つの置換方式
    str_replace(string $search, string $replace, string $str);
    str_replace(array $search, string $replace, string $str);
    str_replace(array $search, array $replace, string $str);
    

    Have a Try
  • カスタム関数:string getFileType(String$name);1つのファイルの接尾辞の名前を求めます例えば:呼び出しの時に1つのファイルの名前の文字列に入って:“a.txt”のようで、どれが結果を返します”.txt”;
  • 文字列関数を用いて要求通りに結果を出力:a)102という数字をそれぞれ2進数、8進数、16進数でb)12.123に2を乗じて小数点2桁の出力を保持する.c)文字列1024の両側の番号と番号を除いて出力する.d)文字列strtoupperを大文字にして逆記述出力する.e)文字列をそのまま出力する.f)10:20:30:40:50に番号を変えて、番号
  • サイトアクセスのカウンターを作る.Webページに出力:Webアクセス:1253回、リフレッシュのたびに1つ追加されます.(ヒント:カウント情報をテキストで格納します).
  • 文字列の大文字と小文字の変換関数を定義する:(参考:chr()とord()