2019独角兽企业重金招聘Python工程师标准>>>

很多时候,搜索 PHP中文文档,很多说明和例子,比书上讲的透彻易懂。
1、发用邮件
1)mail函数,为了正常使用该函数,必须将PHP设置指向邮件发送程序
2)可使用封装SMTP协议的邮件类
3)推荐Mail类
2、isset() 等函数来判断用户提交的表单域是否为空
3、字符串的整理
1)trim()  去除字符串两边多余空格
左右是ltrim() , rtrim() 还有一个别名chop()
2)使用HTML格式化
string nl2br ( string $string [, bool $is_xhtml = true ] )
用 <br /> 替换字符串中的换行符
3)其他:格式化输出,以及转换大小写的函数
4、格式化,转义,以便准出
1)addslashed()  转义字符,然后 stripslashes() 移除这些转义符,恢复
2)PHP的 magic_quotes_gpc 配置参数,打开后,会自动转义输入的字符,显示时自动恢复。
gpc :GET、POST、cookie的缩写
get_magic_quotes_gpc()函数判断系统该指令是否已启用。
5、字符串的连接和分割
1) explode()  根据一个分隔符,将字符串分割为小块,然后返回一个数组。然后通过可选的limit来限制分成字符串小块的数量。
2)imlpode() 和 join() 函数实现与explode() 相反的效果。
3)strtok(),分割,每次从字符串出取出一个片段,输入的字符串会根据分隔符字符串中的每个字符来进行分割。
strtok() 将字符串 str 分割为若干子字符串,每个子字符串以 token 中的字符分割。这也就意味着,如果有个字符串是 "This is an example string",你可以使用空格字符将这句话分割成独立的单词。 
<?php
$string = "This is\tan example\nstring";
/* 使用制表符和换行符作为分界符 */
$tok = strtok($string, " \n\t");
while ($tok !== false) {
echo "Word=$tok<br />";
$tok = strtok(" \n\t");
}
?> 
4)substr() 截取字符串的一部分,指定起点和重点。
6、字符串的比较
1)strcmp() 区分大小写,strcasecmp()不区分大小写 :这两个函数是字典排序,比如会认为2 大于 12,因为字典顺序2 要大于12;
2)strnatcmp() 和不区分大小写的strnatcasecmp() 这是按照自然排序,就是按照“人们习惯的顺序”进行排序。
3) strlen()函数测试字符串长度
应用:如果一个国家的代码没有二级域名,只有一个字母的服务器名称,和一个字母的电子邮件地址,那么email的最小长度是6个字符。
比如, a@a.to .
7、字符串匹配和替换
1)在字符串中查找字符串
strstr()(strchr()和strstr完全一样):区分字母大小写,返回目标字符串第一次出现的位置直到最后
stristr() 和上边一样,就是不区分字符大小写。
strrchr() 也几乎和strstr 一样,但是会返回最后出现目标关键字的位置开始到最后的字符喜欢。
2)如果只是想判断目标关键字是否存在于字符串中,用strpos() 会快很多,性能好很多。
strpos() 返回目标关键字字符串在被搜索字符串中的位置。(应该是第一次出现的位置)
strrpos() 返回最后一次出现的位置。
注意:
如果目标字符串不在字符串中,strpos()和 strrpos()都将返回 false,这又会带来新问题。因为false 在一个如PHP 这样的弱类型语言中等于0。
可以使用运算符"==="来测试返回值。
比如:
$result = strpos($test,"H");
if ($result === false)
{
echo "Not found";
}
else
{
echo "Found at position ".$result ;
}
8、替换子字符串
str_replace() : 替换字符串
substr_replace() :指定的位置开始进行替换
9、正则表达式
PHP 支持两种风格的正则表达式语法: POSIX 和 Perl
注意:POSIX 正则表达式更容易掌握,但是它们不是二进制安全的。
和python的正则表达式语法差不错,不阐述,用得多了就熟悉了
1)几个函数,ereg() 返回一个数组,eregi() 除了不区分大小写,其他和ereg() 一样。
2)替换 ereg_replace() ,eregi_replace()  不区分大小写。
3)split() :用正则表达式分割字符串。
注意:对于同样的功能,正则表达式函数运行效率要低于字符串函数。如果程序足够简单,那么就用字符串表达式。但是,对于可以通过单个正则表达式执行的任务来说,如果使用多个字符串函数,通常是不好滴。

转载于:https://my.oschina.net/bluefly/blog/519015

PHP学习笔记4:字符串与正则相关推荐

  1. 1.C#基础学习笔记3---C#字符串(转义符和内存存储无关)

    技术qq交流群:JavaDream:251572072  教程下载,在线交流:创梦IT社区:www.credream.com ------------------------------------- ...

  2. 正则至少一个数字_JavaScript学习笔记(十七)-- 正则

    正则 正则表达式,又名 "规则表达式" 由我们自己来书写 "规则",专门用来检测 字符串 是否符合 "规则" 使用的 我们使用一些特殊的字符 ...

  3. Qt学习笔记之 字符串类型小结

    1. Qt常用字符串类型 1.1 QString QString是Unicode编码的字符串,存储一系列16位的QChar,每一个QChar对应一个Unicode 4.0编码的字符,详见<Qt学 ...

  4. Python学习笔记--Python字符串连接方法总结

    声明: 这些总结的学习笔记,一部分是自己在工作学习中总结,一部分是收集网络中的知识点总结而成的,但不到原文链接.如果有侵权,请知会,多谢. python中有很多字符串连接方式,总结一下: 1)最原始的 ...

  5. Python学习笔记:字符串和编码

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此,写下这些帖 ...

  6. 截取指定字符前_VBA学习笔记35-1:字符串拆分与组合

    学习资源:<Excel VBA从入门到进阶>第35集 by兰色幻想 本课的示例都在立即窗口展示运行结果,要在立即窗口展示的话要使用"Debug.Print". Debu ...

  7. 【剑指Offer】个人学习笔记_38_字符串的排列

    目录 题目: [剑指 Offer 38. 字符串的排列](https://leetcode-cn.com/problems/zi-fu-chuan-de-pai-lie-lcof/) 题目分析 初始解 ...

  8. 【C语言】学习笔记3——字符串

    1. 字符串(charcacter string)是一个或多个字符的序列 2. C语言没有专门用于存储字符串的变量类型.字符串都被存储在char类型的数组种. 3. 数组由连续的存储单元组成,字符串种 ...

  9. 【廖雪峰Python学习笔记】字符串与编码

    字符串与编码 三种字符编码 ASCII编码 :计算机由美国人发明,最早只有127个字符编码-- 大小写英文字母.数字和符号 Unicode:把中文.日文.韩文等所有语言统一到一套编码中,2-4byte ...

  10. lua学习笔记之字符串

    1.概述 字符串是字节序列.lua是不头疼字节如何编码文本的.它的字符串可以包含包含任何数字代码的字节,包括嵌入的零.可以存储任意二进制数据,也可以存储unicode(UTF-8,UTF-16等)字符 ...

最新文章

  1. EffectKeyMap系列1(Ubuntu)
  2. json例子(后台取消息)
  3. mac睡眠快捷键_告别Mac新手,MacOS电脑高手不得不会的10个使用技巧!
  4. java自动化测试报告_Java自动化测试框架-10 - TestNG之测试结果篇(详细教程)
  5. CSS实现背景透明而背景上的文字图片不透明
  6. 学会asp后再学php,九天学会ASP 之 第二天
  7. vscode如何查看修改过的部分_如何查看和修改Windows远程桌面端口
  8. 超详细Python进行信用评分卡建模【kaggle的give me some credit数据集】【风控建模】
  9. 据说的屏蔽惠普增霸卡方法!
  10. linux学习教程:Vim编辑器和恢复ext4下误删除文件-Xmanager工具
  11. qt 两界面类操作另外一个界面的的ui控件;以及会出现的the class containing “ui::XXX”cound not be found...Please verify the .
  12. DedeCMS顽固木马后门专杀工具V2.0实现方式研究
  13. 线段树合并学习笔记(P4556)
  14. 51单片机实验 7段数码管静态显示数字
  15. IntelliJ IDEA 中如何查看一个类的所有继承关系,包括父类与子类
  16. redis 基本原理及安装
  17. 诺基亚联手迪信通 力推内置仙剑三版5230手机
  18. 计算机毕业设计Java宠物互助领售平台(源码+系统+mysql数据库+lw文档)
  19. IObit Advanced SystemCare 系统清理优化工具
  20. 单机版swarm安装

热门文章

  1. python中的json_简单介绍Python中的JSON使用
  2. 计算机算法设计与分析之----- 递归与分治策略
  3. 【rbd 删除失败】rbd: error: image still has watchers
  4. 可以直接考信息系统项目管理师吗
  5. 《系统集成项目管理工程师》必背100个知识点-97信息系统生命周期
  6. 《系统集成项目管理工程师》必背100个知识点-89行政收尾和合同收尾的区别
  7. Winform中在ZedGraph中最多可以添加多少条曲线
  8. VS中使用C#开发一个登录窗体应用程序
  9. Linux-权限管理相关操作
  10. 拥抱敏捷的用例分析方法