php字元串打亂
Ⅰ (100分)[php]寫幾個你熟悉的字元串處理函數!
推薦你查看官方PHP手冊,以下是摘取相關的資料:
addcslashes — 以 C 語言風格使用反斜線轉義字元串中的字元
addslashes — 使用反斜線引用字元串
bin2hex — 將二進制數據轉換成十六進製表示
chop — rtrim 的別名
chr — 返回指定的字元
chunk_split — 將字元串分割成小塊
convert_cyr_string — 將字元由一種 Cyrillic 字元轉換成另一種
convert_uudecode — 解碼一個 uuencode 編碼的字元串
convert_uuencode — 使用 uuencode 編碼一個字元串
count_chars — 返回字元串所用字元的信息
crc32 — 計算一個字元串的 crc32 多項式
crypt — 單向字元串散列
echo — 輸出一個或多個字元串
explode — 使用一個字元串分割另一個字元串
fprintf — 將格式化後的字元串寫入到流
get_html_translation_table — 返回使用 htmlspecialchars 和 htmlentities 後的轉換表
hebrev — 將邏輯順序希伯來文(logical-Hebrew)轉換為視覺順序希伯來文(visual-Hebrew)
hebrevc — 將邏輯順序希伯來文(logical-Hebrew)轉換為視覺順序希伯來文(visual-Hebrew),並且轉換換行符
hex2bin — Decodes a hexadecimally encoded binary string
html_entity_decode — Convert all HTML entities to their applicable characters
htmlentities — Convert all applicable characters to HTML entities
htmlspecialchars_decode — Convert special HTML entities back to characters
htmlspecialchars — Convert special characters to HTML entities
implode — Join array elements with a string
join — 別名 implode
lcfirst — Make a string's first character lowercase
levenshtein — Calculate Levenshtein distance between two strings
localeconv — Get numeric formatting information
ltrim — Strip whitespace (or other characters) from the beginning of a string
md5_file — 計算指定文件的 MD5 散列值
md5 — 計算字元串的 MD5 散列值
metaphone — Calculate the metaphone key of a string
money_format — Formats a number as a currency string
nl_langinfo — Query language and locale information
nl2br — 在字元串所有新行之前插入 HTML 換行標記
number_format — Format a number with grouped thousands
ord — 返回字元的 ASCII 碼值
parse_str — 將字元串解析成多個變數
print — 輸出字元串
printf — 輸出格式化字元串
quoted_printable_decode — Convert a quoted-printable string to an 8 bit string
quoted_printable_encode — Convert a 8 bit string to a quoted-printable string
quotemeta — Quote meta characters
rtrim — 刪除字元串末端的空白字元(或者其他字元)
setlocale — Set locale information
sha1_file — 計算文件的 sha1 散列值
sha1 — 計算字元串的 sha1 散列值
similar_text — 計算兩個字元串的相似度
soundex — Calculate the soundex key of a string
sprintf — Return a formatted string
sscanf — Parses input from a string according to a format
str_getcsv — 解析 CSV 字元串為一個數組
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 — 反引用一個使用 addcslashes 轉義的字元串
stripos — 查找字元串首次出現的位置(不區分大小寫)
stripslashes — 反引用一個引用字元串
stristr — strstr 函數的忽略大小寫版本
strlen — 獲取字元串長度
strnatcasecmp — 使用「自然順序」演算法比較字元串(不區分大小寫)
strnatcmp — 使用自然排序演算法比較字元串
strncasecmp — 二進制安全比較字元串開頭的若干個字元(不區分大小寫)
strncmp — 二進制安全比較字元串開頭的若干個字元
strpbrk — 在字元串中查找一組字元的任何一個字元
strpos — 查找字元串首次出現的位置
strrchr — 查找指定字元在字元串中的最後一次出現
strrev — 反轉字元串
strripos — 計算指定字元串在目標字元串中最後一次出現的位置(不區分大小寫)
strrpos — 計算指定字元串在目標字元串中最後一次出現的位置
strspn — 計算字元串中全部字元都存在於指定字元集合中的第一段子串的長度。
strstr — 查找字元串的首次出現
strtok — 標記分割字元串
strtolower — 將字元串轉化為小寫
strtoupper — 將字元串轉化為大寫
strtr — 轉換指定字元
substr_compare — 二進制安全比較字元串(從偏移位置比較指定長度)
substr_count — 計算字串出現的次數
substr_replace — 替換字元串的子串
substr — 返回字元串的子串
trim — 去除字元串首尾處的空白字元(或者其他字元)
ucfirst — 將字元串的首字母轉換為大寫
ucwords — 將字元串中每個單詞的首字母轉換為大寫
vfprintf — 將格式化字元串寫入流
vprintf — 輸出格式化字元串
vsprintf — 返回格式化字元串
wordwrap — 打斷字元串為指定數量的字串
====================
這其中我熟悉的有:
echo — 輸出一個或多個字元串
explode — 使用一個字元串分割另一個字元串
addslashes — 使用反斜線引用字元串
bin2hex — 將二進制數據轉換成十六進製表示
html_entity_decode — Convert all HTML entities to their applicable characters
htmlentities — Convert all applicable characters to HTML entities
htmlspecialchars_decode — Convert special HTML entities back to characters
htmlspecialchars — Convert special characters to HTML entities
implode — Join array elements with a string
..........
大部分都用過
Ⅱ PHP for循環輸出字元串亂碼
利用php內置方法mb_substr截取不亂碼;
1、GBK編碼截取示例:
$str = '我是誰'; //gbk編碼的字元串
echo mb_substr($str, 0, 1, 'gbk'); //輸出 我
mb_substr方法比substr多一個參數,用來指定字元串編碼。
2、utf-8編碼截取示例:
[code]
$str = '我abc是誰'; //utf-8編碼的字元串
echo mb_substr($str, 0, 2, 'utf-8'); //輸出 我a
[/code]
中英混合也完全沒有問題。
Ⅲ php如何去除字元串中由於位元組丟失造成的亂碼字元
strpos 將字元睜棗拆成一個一個字元,
然後將不是特殊的字元的組悉笑拆合成一個array ,
for循環拆分的字元,如果在exit上一升雹個array,就 拼接,不存在就congtiue;
拼接的字元就是最終的結果呀
Ⅳ php裡面怎麼隨機打亂數組
function shuffle(&array $array): bool
Description:
打亂數組
本函數打亂(隨機排列單元的順序)一個數組。 它使用的是偽隨機數產生器,並不適合密碼學的場合。
如果兩個成員完全相同,那麼它們在排序數組中的相對順序是未定義的。
Param:
array $array 待操作的數組。
Return:
bool 成功時返回 TRUE, 或者在失敗時返回 FALSE。
<?php
$numbers = range(1, 20);
shuffle($numbers);
foreach ($numbers as $number) {
echo "$number ";
}
?>
Ⅳ php遞歸並組合字元串亂序,求助!
對於有parentID的遞歸遍歷,可以答薯返在第一層先遍歷parentID為0的數據,再在第二層遞歸與之對應的子清飢數據。
不手飢謝,請採納。
Ⅵ php str_shuffle裡面的中文為什麼亂碼
str_shuffle() 函數隨機地打亂字元串中的所有字元。
注意,打亂的是字元串中的「字元」
一個字母等於一個字元
一個漢字等於2個字元
所以這個函數會把漢字撕成兩半後再隨機排序,這樣的結果顯示出來當然是看不懂的亂碼了
沒有現成的方法去處理這個問題,不曉得你要這么搞有什麼用?自己寫了個方法,只能解決全中文字元串隨機排序的問題,
思路:
1、設法把中文字元串轉換成數組,如果字元串中有英文字母或數字將被刪除(因為這些只佔一個字元,處理起來比較麻煩,假設你的中文字元串不需要存在這樣的字元更好)
2、把數組元素重新排序
3、把排序後的數組再轉成字元串
$str = "裡面的中文為什麼亂碼啊";
//幹掉非utf8中文字元
$str = preg_replace('/[^\x{4e00}-\x{9fa5}]/u', '', $str);
//每隔3個字元插入一個「,」,轉換為數組使用,使用strlen()測出php中一個中文霸佔了3個
$re = chunk_split($str,3,",");
//轉換為數組
$re = explode(",",$re);
shuffle($re);//隨機重新排序數組
$newstr = implode($re); //把數據轉為字元串
echo $newstr;
Ⅶ php 怎麼處理字元串
大家通過對PHP的學習,可以運用這一高級語言創建一個性能較高的網站。對於初學者來說,對於PHP字元串mbstring還是比較陌生的,下面我們就來介紹一下PHP字元串mbstring的具體應用。
多國語言並存就意味著多位元組,PHP內置的字元串長度函數strlen無法正確處理中文字元串,它得到的只是字元串所佔的位元組數。對於GB2312的中文編碼,strlen得到的值是漢字個數的2倍,而對於UTF-8編碼的中文,就是1~3倍的差異了。
採用PHP字元串mbstring可以較好地解決這個問題。mb_strlen的用法和strlen類似,只不過它有第二個可選參數用於指定字元編碼。例如得到UTF-8的字元串$str長度,可以用mb_strlen($str,』UTF-8′)。如果省略第二個參數,則會使用PHP的內部編碼。內部編碼可以通過mb_internal_encoding()函數得到,設置有兩種方式:
1. 在php.ini中設置mbstring.internal_encoding = UTF-8
2. 調用mb_internal_encoding(」GBK」)
除了PHP字元串mbstring,還有很多切割函數,其中mb_substr是按字來切分字元,而mb_strcut是按位元組來切分字元,但是都不會產生半個字元的現象。而且從函數切割對長度的作用也不同,mb_strcut的切割條件是小於strlen, mb_substr是等於strlen,看下面的例子,
< ? $str = 『我是一串比較長的中文-www.jefflei.com』; echo 「mb_substr:」 . mb_substr($str, 0, 6, 『utf-8′); echo 」 「; echo 「mb_strcut:」 . mb_strcut($str, 0, 6, 『utf-8′); ?>
輸出如下:
mb_substr:我是一串比較
mb_strcut:我是
需要注意的是,PHP字元串mbstring並不是PHP核心函數,使用前需要確保在php編譯模塊時加入mbstring的支持:
(1)編譯時使用–enable-mbstring
(2)修改/usr/local/lib/php.inc
default_charset = 「zh-cn」
mbstring.language = zh-cn
mbstring.internal_encoding =zh-cn
PHP字元串mbstring類庫內容比較多,還包括mb_ send_ mail 之類的email處理函數等
Ⅷ 用eclipse 寫的php文件運行後結果裡面的輸出的中文字元串全變成亂碼
亂碼說明你編碼設置不一致,就是文本編碼和顯示編碼不一致
不知道你的php文件中有沒有設定文本編碼,如果沒有,不妨在php文件的最上面加一句:
header('Content-Type:text/html;charset=utf-8');
這個是設定編碼為utf-8,如果你的是GB2312,做一下相喊戚應的改變鄭侍陵就行了談閉,然後看看效果
Ⅸ php怎麼生成6位的不重復的字元串
php生成6位不重復的字元串,用到的工具:notepad++,步驟如下:
php代碼部分:
<?php
echo"刷新輸出不同的六個字元組合:".substr(md5(microtime(true)),0,6);
?>
說明:此函數先獲取當前時間,然後通過md5進行加密,然後再通過substr截取六位數,當前時間是不會重復的,從而保證生成的六個字元串永遠不會重復。
效果圖:
注意事項:此代碼必須在php環境下運行。
Ⅹ str_shuffle — 隨機打亂一個字元串
這是總結後的知識點,希望能幫到你!
str_shuffle
(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
str_shuffle — 隨機打亂一頌物個字元串
說明
str_shuffle ( string $str ) : string
str_shuffle() 函數打亂一個字元串,使用任何一種可能的排序方案。
警告
本函數並不會生成安全加密的值,不應用於加密用途。若需要安全加密的值,考慮使用 random_int()、random_bytes() 或 openssl_random_pseudo_bytes() 替代。散州
參數
str
輸入字野掘液符串。
返回值
返回打亂後的字元串。