찾다
백엔드 개발PHP 튜토리얼php 字符串函数收集_php技巧

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>=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转换为


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 —— 将二进制数据转换成十六进制表示
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 —— 计算两个词的差别大小
localeconv —— 获取数字相关的格式定义
ltrim —— 去除字符串左侧的空白或者指定的字符
md5_file —— 将一个文件进行MD5算法加密
md5 —— 将一个字符串进行MD5算法加密
metaphone —— 判断一个字符串的发音规则
money_format —— 按照参数对数字进行格式化的输出
nl_langinfo —— 查询语言和本地信息
nl2br —— 将字符串中的换行符“ ”替换成“

number_format —— 按照参数对数字进行格式化的输出
ord —— 将一个ASCII码转换为一个字符
parse_str —— 把一定格式的字符串转变为变量和值
print —— 用以输出一个单独的值
printf —— 按照要求对数据进行显示
quoted_printable_decode —— 将一个字符串加密为一个8位的二进制字符串
quotemeta —— 对若干个特定字符进行转义
rtrim —— 去除字符串右侧的空白或者指定的字符
setlocale —— 设置关于数字,日期等等的本地格式
sha1_file —— 将一个文件进行SHA1算法加密
sha1 —— 将一个字符串进行SHA1算法加密
similar_text —— 比较两个字符串,返回系统认为的相似字符个数
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 —— 反转义addcslashes()函数转义处理过的字符串
stripos —— 查找并返回首个匹配项的位置,匹配不区分大小写
stripslashes —— 反转义addslashes()函数转义处理过的字符串
stristr —— 通过比较返回一个字符串的部分,比较时不区分大小写
strlen —— 获取一个字符串的编码长度
strnatcasecmp —— 使用自然排序法对字符串进行大小比较,不区分大小写
strnatcmp —— 使用自然排序法对字符串进行大小比较
strncasecmp —— 对字符串的前N个字符进行大小比较,不区分大小写
strncmp —— 对字符串的前N个字符进行大小比较
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 —— 按照一定的字符长度分割字符串



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) //遍历$numbers数组,每次循环当前单元值被赋给$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 仅能用于数组,当试图将其用于其它数据类型或者一个未初始化的变量时会产生错误,它有两种格式:

foreach (array_expression as $value) statementforeach (array_expression as $key => $value) statement
第一种格式遍历给定的 array_expression 数组。每次循环中,当前单元的值被赋给 $value 并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。第二种格式做同样的事,只除了当前单元的键名也会在每次循环中被赋给变量 $key


使用字符数组时注意大小写,比如range(A,z)和range(a,Z)是不一样的。

range()函数还具有第三个参数,该参数的作用是设定步长,比如range(1,9,3)创建的数组元素是:1、4、7

2,PHP中常规数组的排序

一般数组中的各元素均以字符或数字表现的,所以可对数组元素进行升序排列,该功能函数为sort()。比如:

$people=array('name','sex','nation','birth');
foreach ($people as $mychrs)
echo $mychrs." ";
sort($people);
echo "
---排序后---
";
foreach ($people as $mychrs)
echo $mychrs." ";
?>

升序排序后的数组元素显示为 birth name nation sex,当然,sort()函数是区分字母大小写的(字母从大到小的顺序是:A…Z…a…z)

Sort()函数还具有第二参数,用来说明升序的规则是用来比较数字还是字符串的。比如:

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'=>'birth');

使用sort($peoples)默认即是按照元素定义值的升序排序,在关联数组中可使用asort()函数表示按元素值升序排序,关联数组中最主要的则是可按照关键字(如xm、xb、mz等)的升序排序,该方法是用函数ksort()函数。

$peoples=array('xm'=>'name','xb'=>'sex','mz'=>'nation','cs'=>'birth');
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." ";
?>

output: cnbruce cnrose cnjames cnanne
--按原顺序反向--
cnanne cnjames cnrose cnbruce

注意这里的 $fer=array_reverse($fer); 在此之前的任何排序函数均只是声明引用,并没有对原有数组进行重新定义,但当我调试该函数时则需要重新定义。这是因为array_reverse()是返 回原数组修改后的副本,如果不需要原有数组,可对原数组重新定义达到覆盖的目的,否则就另外定义数组保存副本,比 如:$fer_bak=array_reverse($fer_bak);

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
PHP의 초록 클래스 또는 인터페이스에 대한 특성과 언제 특성을 사용 하시겠습니까?PHP의 초록 클래스 또는 인터페이스에 대한 특성과 언제 특성을 사용 하시겠습니까?Apr 10, 2025 am 09:39 AM

PHP에서, 특성은 방법 재사용이 필요하지만 상속에 적합하지 않은 상황에 적합합니다. 1) 특성은 클래스에서 다중 상속의 복잡성을 피할 수 있도록 수많은 방법을 허용합니다. 2) 특성을 사용할 때는 대안과 키워드를 통해 해결할 수있는 방법 충돌에주의를 기울여야합니다. 3) 성능을 최적화하고 코드 유지 보수성을 향상시키기 위해 특성을 과도하게 사용해야하며 단일 책임을 유지해야합니다.

DIC (Dependency Injection Container) 란 무엇이며 PHP에서 사용하는 이유는 무엇입니까?DIC (Dependency Injection Container) 란 무엇이며 PHP에서 사용하는 이유는 무엇입니까?Apr 10, 2025 am 09:38 AM

의존성 주입 컨테이너 (DIC)는 PHP 프로젝트에 사용하기위한 객체 종속성을 관리하고 제공하는 도구입니다. DIC의 주요 이점에는 다음이 포함됩니다. 1. 디커플링, 구성 요소 독립적 인 코드는 유지 관리 및 테스트가 쉽습니다. 2. 유연성, 의존성을 교체 또는 수정하기 쉽습니다. 3. 테스트 가능성, 단위 테스트를 위해 모의 객체를 주입하기에 편리합니다.

SPL SplfixedArray 및 일반 PHP 어레이에 비해 성능 특성을 설명하십시오.SPL SplfixedArray 및 일반 PHP 어레이에 비해 성능 특성을 설명하십시오.Apr 10, 2025 am 09:37 AM

SplfixedArray는 PHP의 고정 크기 배열로, 고성능 및 메모리 사용이 필요한 시나리오에 적합합니다. 1) 동적 조정으로 인한 오버 헤드를 피하기 위해 생성 할 때 크기를 지정해야합니다. 2) C 언어 배열을 기반으로 메모리 및 빠른 액세스 속도를 직접 작동합니다. 3) 대규모 데이터 처리 및 메모리에 민감한 환경에 적합하지만 크기가 고정되어 있으므로주의해서 사용해야합니다.

PHP는 파일 업로드를 어떻게 단단히 처리합니까?PHP는 파일 업로드를 어떻게 단단히 처리합니까?Apr 10, 2025 am 09:37 AM

PHP는 $ \ _ 파일 변수를 통해 파일 업로드를 처리합니다. 보안을 보장하는 방법에는 다음이 포함됩니다. 1. 오류 확인 확인, 2. 파일 유형 및 크기 확인, 3 파일 덮어 쓰기 방지, 4. 파일을 영구 저장소 위치로 이동하십시오.

Null Coalescing 연산자 (??) 및 Null Coalescing 할당 연산자 (?? =)은 무엇입니까?Null Coalescing 연산자 (??) 및 Null Coalescing 할당 연산자 (?? =)은 무엇입니까?Apr 10, 2025 am 09:33 AM

JavaScript에서는 NullCoalescingOperator (??) 및 NullCoalescingAssignmentOperator (?? =)를 사용할 수 있습니다. 1. 2. ??= 변수를 오른쪽 피연산자의 값에 할당하지만 변수가 무효 또는 정의되지 않은 경우에만. 이 연산자는 코드 로직을 단순화하고 가독성과 성능을 향상시킵니다.

CSP (Content Security Policy) 헤더 란 무엇이며 왜 중요한가요?CSP (Content Security Policy) 헤더 란 무엇이며 왜 중요한가요?Apr 09, 2025 am 12:10 AM

CSP는 XSS 공격을 방지하고 리소스로드를 제한하여 웹 사이트 보안을 향상시킬 수 있기 때문에 중요합니다. 1.CSP는 HTTP 응답 헤더의 일부이며 엄격한 정책을 통해 악의적 인 행동을 제한합니다. 2. 기본 사용법은 동일한 원점에서 자원을로드 할 수있는 것입니다. 3. 고급 사용량은 특정 도메인 이름을 스크립트와 스타일로드 할 수 있도록하는 것과 같은보다 세밀한 전략을 설정할 수 있습니다. 4. Content-Security Policy 보고서 전용 헤더를 사용하여 CSP 정책을 디버그하고 최적화하십시오.

HTTP 요청 방법 (Get, Post, Put, Delete 등)이란 무엇이며 언제 각각을 사용해야합니까?HTTP 요청 방법 (Get, Post, Put, Delete 등)이란 무엇이며 언제 각각을 사용해야합니까?Apr 09, 2025 am 12:09 AM

HTTP 요청 방법에는 각각 리소스를 확보, 제출, 업데이트 및 삭제하는 데 사용되는 Get, Post, Put and Delete가 포함됩니다. 1. GET 방법은 리소스를 얻는 데 사용되며 읽기 작업에 적합합니다. 2. 게시물은 데이터를 제출하는 데 사용되며 종종 새로운 리소스를 만드는 데 사용됩니다. 3. PUT 방법은 리소스를 업데이트하는 데 사용되며 완전한 업데이트에 적합합니다. 4. 삭제 방법은 자원을 삭제하는 데 사용되며 삭제 작업에 적합합니다.

HTTPS 란 무엇이며 웹 애플리케이션에 중요한 이유는 무엇입니까?HTTPS 란 무엇이며 웹 애플리케이션에 중요한 이유는 무엇입니까?Apr 09, 2025 am 12:08 AM

HTTPS는 HTTP를 기반으로 보안 계층을 추가하는 프로토콜로, 주로 암호화 된 데이터를 통해 사용자 개인 정보 및 데이터 보안을 보호합니다. 작업 원칙에는 TLS 핸드 셰이크, 인증서 확인 및 암호화 된 커뮤니케이션이 포함됩니다. HTTP를 구현할 때는 인증서 관리, 성능 영향 및 혼합 콘텐츠 문제에주의를 기울여야합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
3 몇 주 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse용 SAP NetWeaver 서버 어댑터

Eclipse를 SAP NetWeaver 애플리케이션 서버와 통합합니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

ZendStudio 13.5.1 맥

ZendStudio 13.5.1 맥

강력한 PHP 통합 개발 환경