preg_match()//explode()// 输出函数//assert()//trim()
1.preg_match()
这是一个正则表达式匹配的函数,其用法如下:
查找文本字符串"php":
<?php
//模式分隔符后的"i"标记这是一个大小写不敏感的搜索
if (preg_match("/php/i", "PHP is the web scripting language of choice.")) {
    echo "查找到匹配的字符串 php。";
} else {
    echo "未发现匹配的字符串 php。";
}
?>
执行结果如下所示:
查找到匹配的字符串 php。
preg_match("//"),这是基本格式//之间是要匹配的表达式规则。
查找单词"web"
<?php
/* 模式中的\b标记一个单词边界,所以只有独立的单词"web"会被匹配,而不会匹配
 * 单词的部分内容比如"webbing" 或 "cobweb" */
if (preg_match("/\bweb\b/i", "PHP is the web scripting language of choice.")) {
    echo "查找到匹配的字符串。\n";
} else {
    echo "未发现匹配的字符串。\n";
}
if (preg_match("/\bweb\b/i", "PHP is the website scripting language of choice.")) {
    echo "查找到匹配的字符串。\n";
} else {
    echo "未发现匹配的字符串。\n";
}
?>
执行结果如下所示:
查找到匹配的字符串。
未发现匹配的字符串。\b表示边界。
下面是常用的匹配符号:
1.表达式直接写出来的字符串直接利用,如key
2.“.”代表任意字符
3.“*”代表一个或一序列字符重复出现的次数,即前一个字符重复任意次
4.“\/”代表“/”
5.[a-z]代表a-z中的任意一个字符
6.[[:punct:]]代表任意一个字符,包括各种符号
7./i代表大小写不敏感
8.{4-7}代表[0-9]中数字连续出现的次数是4-7次
2.explode() 函数
把字符串打散为数组。
例:
<?php
$str = "Hello world. I love Shanghai!";
print_r (explode(" ",$str));
?>  结果:Array ( [0] => Hello [1] => world. [2] => I [3] => love [4] => Shanghai! )
3.scandir() 函数
直接上例子
实例
列出 images 目录中的文件和目录:
<?php
$dir = "/images/";
// 以升序排序 - 默认
$a =scandir($dir);
// 以降序排序
$b =scandir($dir,1);
print_r($a);
print_r($b);
?>结果:
Array
(
[0] => .
[1] => ..
[2] => cat.gif
[3] => dog.gif
[4] => horse.gif
[5] => myimages
)
Array
(
[0] => myimages
[1] => horse.gif
[2] => dog.gif
[3] => cat.gif
[4] => ..
[5] => .
)
定义和用法(注意返回值)
scandir() 函数返回指定目录中的文件和目录的数组。
语法
scandir(directory,sorting_order,context);| 参数 | 描述 | 
|---|---|
| directory | 必需。规定要扫描的目录。 | 
| sorting_order | 可选。规定排列顺序。默认是 0,表示按字母升序排列。 如果设置为 SCANDIR_SORT_DESCENDING 或者 1,则表示按字母降序排列。 如果设置为 SCANDIR_SORT_NONE,则返回未排列的结果。 | 
| context | 可选。规定目录句柄的环境。context 是可修改目录流的行为的一套选项。 | 
技术细节
| 返回值: | 若成功则返回文件和目录的数组。失败则返回 FALSE。 如果 directory 不是目录,则抛出 E_WARNING 级别的错误。 | 
|---|---|
| PHP 版本: | 5.0+ | 
| PHP 更新日志: | PHP 5.4:新增 sorting_order 常量。 | 
注:扫描的目录也可用
1、./是当前目录
2、../是父级目录
3、/是根目录
3.输出函数
常见的输出语句
echo()
可以一次输出多个字符串,多个值之间用逗号分隔。echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。用法 echo  或者  echo()
print()
print()输出一个字符串。print() 实际上不是一个函数(它是一个语言结构)所以不能被可变函数调用,因此你可以不必使用圆括号来括起它的参数列表。(不能输出数组)  用法print   或者print()
print_r()
可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。
var_dump()
判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。
 1 <?php
 2 //演示PHP中输出语句
 3 //创建一个数组变量
 4 $test='Hello';
 5 $array = array("1"=>"a","2"=>"b",array('c','d','e'));
 6
 7 echo "</br>使用echo()输出:".$test.$array."</br>";
 8
 9 echo "</br>使用print()输出</br>";
10 print $test.$array;
11
12 echo "</br>使用print_r()输出</br>";
13 print_r($test.$array);
14
15 echo "</br>使用var_dump()输出</br>";
16 var_dump($test.$array);
17
18 ?>输出结果为:
使用echo()输出:HelloArray
使用print()输出
HelloArray
使用print_r()输出
HelloArray
使用var_dump()输出
string(10) "HelloArray"
4.assert()函数
assert()为断言函数,用来判断一个表达式是否成立。返回true or false;
例如<?php
$s = 123;
assert("is_int($s)");
?>
从这个例子可以看到字符串参数会被执行,这跟eval()类似。不过eval($code_str)只是执行符合php编码规范的$code_str。
assert的用法却更详细一点。
assert_option()可以用来对assert()进行一些约束和控制;
默认值
ASSERT_ACTIVE=1 //Assert函数的开关
ASSERT_WARNING =1 //当表达式为false时,是否要输出警告性的错误提示,issue a PHP warning for each failed assertion
ASSERT_BAIL= 0 //是否要中止运行;terminate execution on failed assertions
ASSERT_QUIET_EVAL= 0 //是否关闭错误提示,在执行表达式时;disable error_reporting during assertion expression evaluation
ASSERT_CALLBACK= (NULL) // 是否启动回调函数 user function to call on failed assertions
5.trim() 函数
用来移除字符串两侧的字符,一般用法:
<?php
$str = "Hello World!";
echo $str . "<br>";
echo trim($str,"Hed!");
?>
移除"Hello" 中的 "He" 以及 "World" 中的 "d!"
trim($str):移除字符串两侧的空格
    ltrim() - 移除字符串左侧的空白字符或其他预定义字符
    rtrim() - 移除字符串右侧的空白字符或其他预定义字符
preg_match()//explode()// 输出函数//assert()//trim()的更多相关文章
- 用Lua实现string的trim()方法
		function trim1(s) return (s:gsub("^%s*(.-)%s*$", "%1")) end -- from PiL2 20.4 fu ... 
- (实例篇)PHP实现HTTP断点续传的方法
		PHP实现HTTP断点续传的方法. <?php /** * PHP-HTTP断点续传实现 * @param string $path: 文件所在路径 * @param string $file: ... 
- 33个超级有用必须要收藏的PHP代码样例
		作为一个正常的程序员,会好几种语言是十分正常的,相信大部分程序员也都会编写几句PHP程序,如果是WEB程序员,PHP一定是必备的,即使你没用开发过大型软件项目,也一定多少了解它的语法. 在PHP的流行 ... 
- laravel 实现上传 excel
		//导入电话号码 public function postTel(){ set_time_limit(0); ini_set('memory_limit','1024M'); $params = In ... 
- 46 个非常有用的 PHP 代码片段
		在编写代码的时候有个神奇的工具总是好的!下面这里收集了 40+ PHP 代码片段,可以帮助你开发 PHP 项目. 这些 PHP 片段对于 PHP 初学者也非常有帮助,非常容易学习,让我们开始学习吧- ... 
- 非常实用的PHP代码片段推荐
		当使用PHP进行开发的时候,如果你自己收 藏 了一些非常有用的方法或者代码片段,那么将会给你的开发工作带来极大的便利.今天我们将介绍10个超级好用的PHP代码片段,希望大家能够喜欢! 1. 使用te ... 
- 直接拿来用 九个超实用的PHP代码片段(二)
		每位程序员和开发者都喜欢讨论他们最爱的代码片段,尤其是当PHP开发者花费数个小时为网页编码或创建应用时,他们更知道这些代码的重要性.为了节约编码时间,笔者收集了一些较为实用的代码片段,帮助开发者提高工 ... 
- CodeIgniter网站静态化管理系统
		CodeIgniter本身带了一套静态化系统 使用方法如下: $this->output->cache( 3 );//每三分钟重新生成一次静态页面 不过这个在系统化的编辑中不方便管理 由此 ... 
- 新写PHP HTTP断点续传类文件代码
		一个支持断点续传的PHP文件下载类文件,调用方法简单,类代码简洁,可记忆上次的下载的节点,实现累积下载,类名称download,类代码如下: function download($path,$file ... 
随机推荐
- 02.Delphi通过接口实现多重继承
			uSayHello类如下: unit uSayHello; interface type // 接口 IGreetable = interface ['{D91DDE09-0FC4-4FE9-AE0D ... 
- Day 31:CSS选择器、常用CSS样式、盒子模型
			<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ... 
- poker2的配置使用
			1.映射Win键的诸多功能 切换输入法,shift+alt本身已经支持了,所以Win+Space就不管了 Win+Space映射为Fn+Space Win+E映射为Fn+E Win+R映射为Fn+R ... 
- 038-PHP向返回的闭包函数实例中,传递外部变量参数
			<?php # 向返回的闭包函数实例中,传递外部变量参数 # 直接调用将不会输出$txt的内容 function demo(){ $txt = '我爱PHP'; # 1.function()内的 ... 
- centos下将系统预置yum源更换为阿里云源
			参考:http://mirrors.aliyun.com/help/centos?spm=5176.bbsr150321.0.0.d6ykiD 步骤1:备份/etc/yum.repos.d/下的Cen ... 
- css 基础知识 (待完善...)
			CSS 1.position 属性 对元素进行定位. absolute 相对于 非static类型的position 的 第一个(临近的) 父元素 进行定位. ... 
- CentOS 7 下oracle 11G R2 ADG 搭建
			本文记录ADG搭建操作步骤,首先在虚拟机CentOS中安装并配置好oracle 11g R2(具体安装步骤在我的另一篇博客中),然后拷贝一份虚拟机,修改新虚拟机的主机名和ip配置,这时候主库和备库是一 ... 
- mybaits入门学习
			学习了简单的mybatis的配置 Bean层: 这个都会很简单 一个完整的Bean 需要getter和setter方法还需要一个空的构造方法和一个满的构造方法. Dao层: 创建一个接口就ok了 pa ... 
- 使用FragmentStatePagerAdapter时发现的内存泄露问题
			这篇文章想说的并非是由于使用 FragmentStatePagerAdapter 而导致的内存泄漏,内存泄漏的真正原因和 FragmentStaePagerAdapter 并无直接关联,但是使用 Fr ... 
- POJ 3994:Probability One
			Probability One Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 1674 Accepted: 1151 D ... 
