PHPの文字列関数

巴扎黑
リリース: 2016-11-24 10:49:33
オリジナル
1262 人が閲覧しました

1查找字符位置函数:
strpos($str,search,[int]):查找search在$str中的第一次位置从int开始;
stripos($str,search,[int]):函数返回字符串在另一个字符串中第一次出现的位置。该函数对大小写不敏感
strrpos($str,search,[int]):查找search在$str中的最后一次出现的位置从int


2、提取子字符函数(双字节)
submit($str,int start[,int length]):从$str中strat位置开始提取[length长度的字符串]。
strstr($str1,$str2):从$str1(第一个的位置)搜索$str2并从它开始截取到结束字符串;若没有则返回FALSE。
stristr() 功能同strstr,只是不区分大小写。
strrchr() 从最后一次搜索到的字符处返回;用处:取路径中文件名

3、替换字符串
str_replace(search,replace,$str):从$str中查找search用replace来替换

str_irreplace(search,replace,$str):

strtr($str,search,replace):这个函数中replace不能为"";

substr_replace($Str,$rep,$start[,length])$str原始字符串,$rep替换后的新

字符串,$start起始位置,$length替换的长度,该项可选

4、字符长度
int strlen($str)

5、比较字符函数
int strcmp($str1,$str2):$str1>=<$str2分别为正1,0,-1(字符串比较)
strcasecmp() 同上(不分大小写)

strnatcmp("4","14") 按自然排序比较字符串
strnatcasecmp() 同上,(区分大小写)

6、分割成数组函数
str_split($str,len):把$str按len长度进行分割返回数组
split(search,$str[,int]):把$str按search字符进行分割返回数组int是分割几次,后面的将不分割
expload(search,$str[,int])

7、去除空格:ltrim、rtrim、trim

8、加空格函数
chunk_split($str,2);向$str字符里面按2个字符就加入一个空格;

9、chr、ord--返回指定的字符或ascii

10、HTML代码有关函数

nl2br():使/n转换为<br>。

strip_tags($str[,'

']):去除HTML和PHP标记 
在$str中所有HTML和PHP代码将被去除,可选参数为html和PHP代码作用是将保留

可选参数所写的代码。
如:echo strip_tags($text, '

');


htmlspecialchars($str[,参数]):页面正常输出HTML代码参数是转换方式

11、字符大小写转换函数
strtolower($str) 字符串转换为小写
strtoupper($str) 字符串转换为大写
ucfirst($str) 将函数的第一个字符转换为大写
ucwords($str) 将每个单词的首字母转换为大写

12、数据库相关函数
addslashes($str):使str内单引号(')、双引号(")、反斜线(/)与 NUL

字符串转换为/',/",//。
magic_quotes_gpc = On 自动对 get post cookie的内容进行转义

get_magic_quotes_gpc()检测是否打开magic_quotes_gpc

stripslashes() 去除字符串中的反斜杠


13、连接函数
implode(str,$arr) 将字符串数组按指定字符连接成一个字符串;implode()函数有个别名函数join

addcslashes - 文字列内の一部の文字にバックスラッシュエスケープ文字を追加します
addslashes - 指定された方法で文字列内の文字をエスケープします
bin2hex - バイナリデータを 16 進数表現に変換します
chr —— 文字の ASCII コードを返します
chunk_split ——特定の文字長に従って文字列を小さな部分に分割します
convert_cyr_string —— キリル文字を他の文字に変換します
convert_uudecode —— 文字列を復号化します
convert_uuencode —— 文字列を暗号化します
count_chars - 文字の使用情報を文字列で返します
crc32 -文字列の crc32 多項式を計算します
crypt - 一方向ハッシュ暗号化関数
explode - 区切り文字を使用して文字列を配列形式に変換します
fprintf - 必要に応じてデータを返し、ドキュメント ストリームに直接書き込みます
get_html_translation_table - HTML を返します変換可能なエンティティ
html_entity_decode - htmlentities() 関数の逆関数、HTML エンティティを文字に変換します
htmlentities —— 文字列内の一部の文字を HTML エンティティに変換します
htmlspecialchars_decode —— htmlspecialchars() 関数の逆関数、HTML を変換しますエンティティを文字に変換します
htmlspecialchars —— 文字列内の一部の文字を HTML エンティティに変換します
implode —— 特定の区切り文字を使用して配列を文字列に変換します
join - 配列を文字列に変換します (implode() 関数のエイリアス)
levenshtein - 2 つの単語の差を計算します
localeconv - 数値関連の形式定義を取得します
ltrim —— 文字列の左側にある空白または指定された文字を削除します
md5_file —— MD5 アルゴリズムを使用してファイルを暗号化します
md5 —— 暗号化しますMD5 アルゴリズムを使用した文字列
metaphone ̶ 文字列の発音規則を決定する
money_format ̶ パラメータに従ってフォーマットされた数値を出力
nl_langinfo ̶ 言語およびロケール情報をクエリする
nl2br ̶ 文字列内の改行文字「/n」を「」に置き換える

number_format — パラメータに従ってフォーマットされた数値の出力
ord - ASCII コードを文字に変換します
parse_str - 特定の形式の文字列を変数と値に変換します
print - 文字列を出力するために使用されます単一の値
printf - データの表示が必要です
quoted_printable_decode - 文字列を 8 ビットのバイナリ文字列に暗号化します
quotemeta - いくつかの特定の文字をエスケープします
rtrim - 文字列の右側の空白または指定された文字を削除します
setlocale - 設定数値、日付などのローカル形式
sha1_file - SHA1 アルゴリズムでファイルを暗号化する
sha1 - SHA1 アルゴリズムで文字列を暗号化する
similar_text - 2 つの文字列を比較し、システムが判断したものを返す 類似する文字の数
soundex —— 発音を決定する文字列のルール
sprintf —— 必要に応じてデータを返しますが、出力はしません
sscanf —— 文字列をフォーマットできます
str_ireplace —— str_replace() 関数と同様です 文字列の一致と置換を行いますが、大文字と小文字は区別しません
str_pad -文字列の両側をパディングします
str_repeat - 文字列の組み合わせを繰り返します
str_replace - 文字列を一致させて置換します
str_rot13 - 文字列をパディングします ROT13 暗号化処理
str_shuffle —— 文字列内の文字をランダムにソートします
str_split —— 文字列を分割します文字間隔に従って配列に変換
str_word_count —— 文字列内の英単語情報を取得
strcasecmp —— 文字を一致させる 文字列の大小比較、大文字と小文字を区別しない
strchr - の一部を返す strstr() 関数のエイリアス比較による文字列
strcmp - 文字列サイズの比較
strcoll - ローカル設定に基づく文字列サイズ比較
strcspn - 連続して一致しない文字の長さの値を返します
strip_tags - 文字列内の HTML および PHP コードを削除します
stripcslashes - Unescapes addcslashes() 関数によって処理された文字列
stripos - 最初に一致した位置を検索して返します。一致は大文字と小文字が区別されません
stripslashes - 処理された文字列をエスケープするための addslashes() 関数のアンチエスケープ
stristr - を返します文字列の一部を比較します。比較では大文字と小文字は区別されません
strlen - 文字列のエンコードされた長さを取得します
strnatcasecmp - 自然な並べ替えを使用して文字列を比較し、大文字と小文字を区別しません
strnatcmp - 自然な並べ替えを使用して文字列を比較します
strncasecmp - 比較strings 文字列の最初の N 文字を大文字と小文字を区別せずに比較します
strncmp —— 文字列の最初の N 文字のサイズを比較します
strpbrk —— 比較を通じて文字列の一部を返します
strpos —— 最初に一致したものを見つけて返します項目の位置
strrchr - 後ろから前に比較して文字列の一部を返します
strrev - 文字列内のすべての文字を逆順に配置します
strripos - 後ろから前に検索して、最初に一致した項目の位置を返しますマッチングでは大文字と小文字が区別されません
strrpos —— 後ろから前に検索し、最初に一致した項目の位置を返します
strspn —— 文字が連続して出現する長さの値を一致させて返します
strstr —— 比較して文字列の一部を返します
strtok ——指定された文字数を使用して文字列を分割します
strto lower —— 文字列を小文字に変換します
strtoupper —— 文字列を大文字に変換します
strtr —— 文字列を比較および置換します
substr_compare —— インターセプト後の文字列を比較します
substr_count ——文字列内の特定の文字セグメントの出現数を計算します
substr_replace——文字列内の一部の文字を置換します
substr——文字列を切り捨てます
trim——文字列の両側の空白または指定された文字を削除します
ucfirst——指定された文字列の最初の文字を大文字に変換します
ucwords - 指定された文字列内の各英単語の最初の文字を大文字に変換します
vfprintf - 必要に応じてデータを返し、直接書き込みます ドキュメント フロー
vprintf - 必要に応じてデータを表示します
vsprintf - 必要に応じてデータを返しますが、出力はしません
wordwrap - 特定の文字長に従って文字列を分割します

1、配列 () をすばやく作成する関数 range()

たとえば、 range() 関数は、 1 から 9 までの数値配列:

$numbers=range(1,9); // range を使用して、1 から 9 までの合計 9 個の数値を直接作成します。「1」で始まり、で終わる配列です。 「9」。
echo $numbers[1]; // 2 番目に作成された配列値を出力します: echo $numbers[0]; 次に、最初の値 0 を入力します。
?>

もちろん、 range(9,1) を使用すると、9 から 1 までの数値配列が作成されます。同時に、 range() は a から z までの文字配列も作成できます:

$numbers=range(a,z);
foreach ($numbers as $mychrs) // $ を走査します。数値配列、それぞれ 2 番目のループの現在のセル値は $mychrs
echo $mychrs に割り当てられます。" "; //output a b c d e f g h i j k l m n o p q r s t u v w x y z
?>

//foreach は配列を走査する便利な方法です。他のデータ型または初期化されていない変数で使用するとエラーが発生します:

foreach (array_expression as $value) stateforeach (array_expression as $key => $value)ステートメント
最初のステートメントは、指定された array_expression 配列を反復処理します。ループを通過するたびに、現在のセルの値が $value に割り当てられ、配列内のポインターが 1 ステップ前に移動します (そのため、次のループで次のセルが取得されます)。 2 番目の形式でも同じことを行いますが、現在のユニットのキー名も各ループで変数 $key に割り当てられる点が異なります


range(A,z) や range(A,z) などの文字配列を使用する場合は、大文字と小文字に注意してください。 range(a,Z)が異なります。

range() 関数には、ステップ サイズを設定するために使用される 3 番目のパラメーターもあります。たとえば、range(1,9,3) によって作成される配列要素は、1、4、7

2、従来型です。 in PHP 配列のソート

一般に、配列内の各要素は文字または数字で表されるため、配列の要素を昇順に並べることができます。この関数がsort()です。例:

$people=array('name','sex','nation','birth');
foreach ($people as $mychrs)
echo $mychrs." ";
sort ($people);
echo "
---並べ替え後---
";
foreach ($people as $mychrs)
echo $mychrs." ";
? > ;

昇順にソートされた配列要素は、出生名、国籍、性別として表示されます。もちろん、sort() 関数では大文字と小文字が区別されます (文字の順序は A...Z... です)。 a...z)

Sort() 関数には 2 番目のパラメーターもあります。これは、数値または文字列の比較に昇順ルールが使用されるかどうかを示すために使用されます。例:

echo "---数値の昇順に並べ替え---
";
$num2=array('26','3',);
sort( $num2 ,SORT_NUMERIC);
foreach ($num2 as $mychrs)
echo $mychrs." ";

echo "
---昇順で並べ替えます---
";
$num3=array('26','3');
sort($num3,SORT_STRING);
foreach ($num3 as $mychrs)
echo $mychrs. ";
?>

SORT_NUMERICおよび SORT_STRING は、数値または文字の昇順を宣言します。数字の昇順に並べると 3、26 になりますが、文字の昇順に並べると 26、3 になります。

PHP には、昇順関数に加えて、降順または逆ソート関数もあります。これは、次のような rsort() 関数です:

$num1=range(1,9);
rsort($num1) ; //ここ 実際、これは range(9,1)

3 と同等です。PHP における連想配列のソート

PHP は数値インデックス配列だけでなく、関連する配列もサポートします。たとえば、次の配列は関連 (連想) 配列です:

$peoples=array('xm'=>'name','xb'=>'sex','mz'=>'nation' ,'cs '=>'誕生');

sort($peoples) を使用すると、デフォルトで要素定義値の昇順にソートされます。連想配列で最も重要なことは、asort() 関数を使用することです。キーワード ( xm 、 xb、 mz など) で昇順に並べ替えるには、関数 ksort() を使用します。

$peoples=array('xm'=>'名前','xb'=>'性別','mz'=>'国家','cs'=>'誕生');
foreach ($peoples as $mychrs)
echo $mychrs." ";

echo "
--要素値で昇順に並べ替えます--
";
asort( $peoples);
foreach ($peoples as $mychrs)
echo $mychrs." ";

echo "
--キーワードで昇順に並べ替えます--
" ;
ksort ($peoples);
foreach ($peoples as $mychrs)
echo $mychrs." ";
?>
は、sort() を昇順にした通常の配列の逆ソート rsort() 降順関数に対応します配列には、対応する降順関数もあります。asort() 関数と arsort() 関数、ksort() 関数と krsort() 関数です。
メモリ: プロトタイプ関数は sort() です。ここで、a と k は先行する必要がある連想配列を表し、逆ソートは r で変更されます。

4、PHP の配列要素はランダムに並べ替えられます

PHP では shuffle() 関数を使用して配列要素をランダムに並べ替えます。次のような異なる並べ替えの組み合わせが毎回表示されます:

$fer =array( 'cnbruce','cnrose','cnjames','cnanne');
shuffle($fer); //ページが更新されるたびにランダムに並べ替えられます。

foreach ($fer as $mychrs)
echo $mychrs." ";
?>

5、PHP 配列は元の順序で逆順にソートされます

PHP の array_reverse() 関数を使用すると、配列要素を元の順序で並べ替える 逆の順序で並べ替えます。例:

$fer=array('cnbruce','cnrose','cnjames','cnanne');
foreach ($fer as $mychrs)
echo $mychrs." ";

$fer=array_reverse($fer); //配列内の要素を逆順に並べ替えます
echo "
--元の順序で逆にします--
";
foreach ( $ fer as $mychrs)
echo $mychrs." ";
?>

出力: cnbruce cnrose cnjames cnanne
--元の順序で反転--
cnanne cnjames cnrose cnbruce

ここに注意してください $fer=array_reverse ($fer ); これより前のソート関数は参照を宣言するだけで、元の配列を再定義しませんが、関数をデバッグするときに再定義する必要があります。これは、array_reverse() が元の配列の変更されたコピーを返すためです。元の配列が必要ない場合は、元の配列を再定義して上書きできます。それ以外の場合は、コピーを保存するために別の配列を定義する必要があります (例: $fer_bak)。 =array_reverse($fer_bak );


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート