mydal

怕光阴流逝 让一切都作废

0%

php字符串

php字符串函数的总结

php字符串函数还是很难记忆的,为了之后使用方便,记录一下。

explode(字符串分割)

使用一个字符串分割另一个字符串 结果为数组

1
2
3
4
5
$str = 'a,b,c,d'; 
$res = explode(',',$str);
echo "<pre>";
var_dump($res);
echo "</pre>";

implode(join)

将一个一维数组的值转化为字符串

1
2
3
$arr = ['a'=>1,'b'=>2]; 
$res = implode(' ',$arr);
echo $res;

htmlentities

将字符转换为HTML转义字符

1
2
3
$str = "A 'quote' is <b>bold</b>";
//html输出: A 'quote' is &lt;b&gt;bold&lt;/b&gt;
echo htmlentities($str);

htmlspecialchars_decode

将特殊的HTML实体转换回普通字符

1
2
3
$str = "<p>this -&gt; &quot;</p>\n"; 
echo htmlspecialchars_decode($str);
*//<p>this -> "</p>

htmlspecialchars

将特殊字符转换为HTML实体

lcfirst

使第一个字符串的第一个字符小写

ucfirst

使字符串的第一个字符大写

strtolower

将字符串转化为小写

strtoupper

将字符串转化为大写

ucwords

将字符串中的每个单词的首字母转换为大写

trim

trim() 函数移除字符串两侧的空白字符或其他预定义字符。

1
2
3
4
5
6
7
8
9
//移除字符
$str = "Hello World!";
echo $str."<br>";
echo trim($str,"Hed!");
//移除空白
$str = " Hello World! ";
echo "不使用 trim: ".$str;
echo "<br>";
echo "使用 trim: ".trim($str);

ltrim() 移除字符串左侧的空白字符或其他预定义字符

rtrim() 移除字符串右侧侧的空白字符或其他预定义字符

parse_str

将字符串解析成多个变量

parse_str(string,array);

有两个参数 string是必须要有的 规定要解析的字符串

array可写可不写。规定存储变量的数组的名称。该参数指示变量将被存储到数组中。

1
2
parse_str("name-Bill&age-60",$myArray);
print_r($myArray);

输出结果:

1.png

str_replace

字符串替换(区分大小写)

str_ireplace()不区分大小写 其他与str_replace一致

注意:

如果搜索的字符串是数组,那么它将返回数组。

如果搜索的字符串是数组,那么它将对数组中的每个元素进行查找和替换。

如果同时需要对数组进行查找和替换,并且需要执行替换的元素少于查找到的元素的数量,那么多余元素将用空字符串进行替换

如果查找的是数组,而替换的是字符串,那么替代字符串将对所有查找到的值起作用。

语法:

1
str_replace(find,replace,string,count);

find:必需.规定要查找的值;

replace:必需。规定替换 find 中的值的值。

string:必需。规定被搜索的字符串。

count:可选。对替换数进行计数的变量。

实例:

1
2
3
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "替换数:$i";

str_shuffle

随机打乱字符串

str_split

将字符串转化为数组

语法:

1
str_split(string,length)

string:必需.规定要分割的字符串

length:可选。规定每个数组元素的长度。默认是1.

1
print_r(str_split("Shanghai",3));

strstr

查询字符串首次出现

stristr 不区分大小写查找字符串首次出现

语法:

1
strstr(string,search,before_search)

string:被搜索的字符串

search:规定要搜索的字符串

before_search:可选 默认为false 如果设置为true 返回 search 参数第一次出现之前的字符串部分。

1
echo strstr("Hello world!","world",true); //输出Hello

strip_tags

从字符串中去除 HTML 和 PHP 标记

语法:

1
strip_tags(string,allow)

string: 必需.规定要检查的字符串

allow:可选.规定允许的标签 可以保留

1
echo strip_tags("Hello <b><i>world!</i></b>","<b>");

strops

查询字符串首次出现的位置

语法:

1
strpos(string,find,start)

string:要搜索的字符串

find:规定要查找的字符串

start:可选,规定在何处开始搜索(字符串位置从0开始)

1
echo strpos("You love php, I love php too!","php");

扩展:

  1. stripos:查找字符串在另一字符串中第一次出现的位置(不区分大小写)
  2. strripos:查找字符串在另一字符串中最后一次出现的位置(不区分大小写)
  3. strrpos: 查找字符串在另一字符串中最后一次出现的位置(区分大小写)

str_pad

字符串填充

语法:

1
str_pad(string,length,pad_string,pad_type)
string 必需。规定要填充的字符串。
length 必需。规定新的字符串长度。如果该值小于字符串的原始长度,则不进行任何操作。
pad_string 可选。规定供填充使用的字符串。默认是空白。
pad_type 可选。规定填充字符串的哪边。可能的值:STR_PAD_BOTH - 填充字符串的两侧。如果不是偶数,则右侧获得额外的填充。STR_PAD_LEFT - 填充字符串的左侧。STR_PAD_RIGHT - 填充字符串的右侧。默认

实例:

1
2
$str = "Hello World";
echo str_pad($str,30,".",STR_PAD_LEFT);//左侧
1
2
$str = "Hello World";
echo str_pad($str,30,".:",STR_PAD_BOTH);//右侧

str_repeat

重复一个字符串

1
echo str_repeat("Shanghai",5);

strlen

获取字符串长度

strpbrk

在字符串中查找一组字符的任何一个字符,查到后返回后面的字符

1
2
3
$text = 'This is a Simple text.';
// 输出 "is is a Simple text.",因为 'i' 先被匹配
echo strpbrk($text, 'mi');

strrev

反转字符串

substr_count()

计算字符串出现的次数

$text = 'This is a test';

echo substr_count($text, 'is'); // 2

wordwrap

按照指定长度对字符串进行折行处理

语法:

1
wordwrap(string,width,break,cut)
string 必需。规定要进行折行的字符串。
width 可选。规定最大行宽度。默认是 75。
break 可选。规定作为分隔符使用的字符(字串断开字符)。默认是 “\n”。
cut 可选。规定是否对大于指定宽度的单词进行折行:FALSE - 默认。No-wrapTRUE - 折行
1
2
3
$str = 'wo ca lie , zhe shi shen me gui';
$nstr = wordwrap($str,5,'<br/>');
echo $nstr;

substr()

substr() 函数返回字符串的一部分。

语法:

1
substr(string,start,length)
string 必需。规定要返回其中一部分的字符串。
start 必需。规定在字符串的何处开始。正数 - 在字符串的指定位置开始负数 - 在从字符串结尾开始的指定位置开始0 - 在字符串中的第一个字符处开始
length 可选。规定被返回字符串的长度。默认是直到字符串的结尾。正数 - 从 start 参数所在的位置返回的长度负数 - 从字符串末端返回的长度
1
2
3
$str='hello world hhh';
$srt=substr($str,0,6);
echo $srt;

md5

加密函数

以 32 字符十六进制数字形式返回散列值。

sha1

计算字符串的 sha1 散列值,默认40 字符长度的十六进制数字