PHP substr 返回字符串的子串的例子
substr
(PHP 4, PHP 5)
substr — 返回字符串的子串
说明
string substr ( string $string , int $start [, int $length ] )
返回字符串 string 由 start 和 length 参数指定的子字符串。
参数
string
输入字符串。
start
如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。
如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。
如果 string 的长度小于或等于 start,将返回 FALSE。
Example #1 使用负数 start
<?php
$rest = substr("abcdef", -1); // 返回 "f"
$rest = substr("abcdef", -2); // 返回 "ef"
$rest = substr("abcdef", -3, 1); // 返回 "d"
?>
length
如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于string 的长度)。
如果提供了负数的 length,那么 string 末尾处的许多字符将会被漏掉(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回一个空字符串。
如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。
如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。
Example #2 使用负数 length
<?php
$rest = substr("abcdef", 0, -1); // 返回 "abcde"
$rest = substr("abcdef", 2, -1); // 返回 "cde"
$rest = substr("abcdef", 4, -4); // 返回 ""
$rest = substr("abcdef", -3, -1); // 返回 "de"
?>
返回值
返回提取的子字符串, 或者在失败时返回 FALSE。
范例
Example #3 substr() 基本用法
<?php
echo substr('abcdef', 1); // bcdef
echo substr('abcdef', 1, 3); // bcd
echo substr('abcdef', 0, 4); // abcd
echo substr('abcdef', 0, 8); // abcdef
echo substr('abcdef', -1, 1); // f
// 访问字符串中的单个字符
// 也可以使用中括号
$string = 'abcdef';
echo $string[0]; // a
echo $string[3]; // d
echo $string[strlen($string)-1]; // f
?>
错误/异常
错误时返回 FALSE。 <?php
var_dump(substr('a', 1)); // bool(false)
?>
mt_rand() 使用 mersenne twister 算法返回随机整数.
语法:mt_rand(min,max)
说明:如果没有提供可选参数 min 和 max,mt_rand() 返回 0 到 rand_max 之间的伪随机数,例如想要 5 到 15(包括 5 和 15)之间的随机数,用 mt_rand(5,15).
在 3.0.7 之前的版本中,max 的含义是 range,要在这些版本中得到和上例相同 5 到 15 的随机数,简短的例子是 mt_rand (5, 11).
PHP实例代码如下:
$rand = mt_rand(0,1);
if( $rand==0 )
{
$array = array(41,20,26,29,30);
}
elseif( $rand==1 )
{
$array = array(38,42,37,400,444);
}//开源软件:phpfensi.com
foreach( $array as $v => $vv )
{
echo "$vvn";
}
利用时间和mt_rand函数获取随机名字
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2016/9/19 0019
* Time: 19:47
*/
function rdname(){
$t = getdate();
$year=$t['year'];
$month = $t['mon']<10? "0".$t['mon']:$t['mon'];
$day = $t['mday']>9?$t['mday']:"0".$t['mday'];
$hour= $t['hours']>9?$t['hours']:"0".$t['hours'];
$min = $t['minutes']>9?$t['minutes']:"0".$t['minutes'];
$sec = $t['seconds']>9?$t['seconds']:"0".$t['seconds'];
$randnum=mt_rand(1000,9999);//获取随机的4个数字
$randname=$year.$month.$day.$hour.$min.$sec.$randnum;//把年月日时分和随机数拼接起来
return $randname;//返回新的名字
}
$newname=rdname();//把返回的名字赋值给$newname
echo $newname; ?>
下面我们在这里来为各位介绍一篇关于php curl file_get_contents post方式获取数据例子,希望文章能够帮助到各位朋友.
curl post,file_get_contents post,curl file_get_contents post请求数据
在PHP中cURL、file_get_contents函数均可以获取远程链接的数据,但是file_get_contents的可控制性不太好,对于各种复杂情况的数据采集情景,file_get_contents显得有点无能为力,cURL在数据采集情景复杂的环境下略显优势。cURL函数的curl_setopt里面还有很多参数,读者可以抽空整体看一遍,虽然平时未必用得上,但是至少做到心里有底,知道都有哪些参数,必要时还能找出来使用。本文仅粗略介绍了file_get_contents函数和cURL函数的基本使用:
curl post方式获取数据
//调用示例
$post_data = array ("category" => "9");
echo postCurl('http://fity.cn/category.php',$post_data);
//CURL函数--POST方式请求资源
function postCurl($api_url, $post_data){
$ch = curl_init(); // 初始化CURL句柄
curl_setopt($ch, CURLOPT_URL, $api_url); // 设置访问的url地址
curl_setopt($ch, CURLOPT_TIMEOUT, 35); // 设置超时
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15); // 等待的时间,如果设置为0,则不等待
curl_setopt($ch, CURLOPT_HEADER, false); // 设定是否输出页面内容
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 设定是否显示头信息
curl_setopt($ch, CURLOPT_POST, true); // post数据
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);// post的变量
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"); // 模拟浏览器头信息
curl_setopt($ch, CURLOPT_REFERER, "http://www.x.com"); // 伪造来源地址
$data = curl_exec($ch);
curl_close($ch);
if ($data) {
return $data;
} else {
return false;
}
}
file_get_contents post方式获取数据
$postdata = array ('category' => 9);
$postdata = http_build_query($postdata);
$opts = array (
'http' => array (
'method' => 'POST',
'content' => $postdata
)
);
$context = stream_context_create($opts);
$html = file_get_contents('http://fity.cn/category.php', false, $context);
echo $html;
function mkdirs($dir){
return is_dir($dir) or (mkdirs(dirname($dir)) and mkdir
($dir,0777));
}
函数说明:
(1)函数:bool is_dir ( string $filename )
功能:判断给定文件名是否是一个目录,如果文件名存在并且为目录则返回 TRUE。如果 filename 是一个相对路径,则按照当前工作目录检查其相对路径。
注: 本函数的结果会被缓存。更多信息参见 clearstatcache()。
(2)函数:dirname(path)
功能:dirname() 函数返回路径中的目录部分。
说明:path参数必须,规定要检查的路径,是一个包含有指向一个文件的全路径的字符串。该函数返回去掉文件名后的目录名。
(3)函数:mkdir(path,mode,recursive,context)
功能:mkdir() 函数创建目录,尝试新建一个由 path 指定的目录,默认的 mode 是 0777,意味着最大可能的访问权。
说明:若成功,则返回 true,否则返回 false。
参数说明:
path--必需。规定要创建的目录的名称。
mode 必需。规定权限。默认是 0777。
recursive 必需。规定是否设置递归模式。
context 必需。规定文件句柄的环境。Context 是可修改流的行为的一套选项。
提示和注释:
注释:mode 在 Windows 下被忽略。自 PHP 4.2.0 起成为可选项。
注释:对 context 的支持是 PHP 5.0.0 添加的。
注释:recursive 参数是 PHP 5.0.0 添加的。
PS:在php5下使用mkdir是可以创建多级目录的,因为PHP5对创建目录函数 mkdir 增加了一个新的参数 recursive ,通过设置 recursive 为 true 可以实现递归创建目录的目的,但是PHP4环境以下不可以。
先介绍一下 mkdir() 这个函数:
mkdir($path,0777,true);
第一个参数:必须,代表要创建的多级目录的路径;
第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权;
第三个参数:true表示允许创建多级目录。
举例代码(支持创建中文目录):
<?php
header("Content-type:text/html;charset=utf-8");
//要创建的多级目录
$path="dai/php/php学习";
//判断目录存在否,存在给出提示,不存在则创建目录
if (is_dir($path)){
echo "对不起!目录 " . $path . " 已经存在!";
}else{
//第三个参数是“true”表示能创建多级目录,iconv防止中文目录乱码
$res=mkdir(iconv("UTF-8", "GBK", $path),0777,true);
if ($res){
echo "目录 $path 创建成功";
}else{
echo "目录 $path 创建失败";
}
}
?>
相关文章
- 这篇文章主要介绍了C#中截取字符串的的基本方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-03
- 这篇文章介绍了C#判断字符串是否数字或字母的实例,有需要的朋友可以参考一下...2020-06-25
- 这篇文章主要介绍了PostgreSQL判断字符串是否包含目标字符串的多种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-23
- 这篇文章主要介绍了C++ string常用截取字符串方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-04-25
- 安装curl扩展支持https是非常的重要现在许多的网站都使用了https了,下面我们来看一篇关于PHP安装curl扩展支持https例子吧。 问题: 线上运行的lamp服务器,默认yu...2016-11-25
- 本文实例讲述了php字符串按照单词进行反转的方法。分享给大家供大家参考。具体分析如下:下面的php代码可以将字符串按照单词进行反转输出,实际上是现将字符串按照空格分隔到数组,然后对数组进行反转输出。...2015-03-15
- 这篇文章主要介绍了使用list stream:任意对象List拼接字符串操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教...2021-09-09
- 这篇文章主要介绍了MySQL 字符串拆分操作(含分隔符的字符串截取),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-22
- 这篇文章主要介绍了C# 16 进制字符串转 int的方法,非常不错,具有参考借鉴价值,需要的朋友可以参考下...2020-06-25
- JS中默认中文字符长度和其它字符长度计算方法是一样的,但某些情况下我们需要获取中文字符串的实际长度,代码如下: 复制代码 代码如下: function strLength(str) { var realLength = 0, len = str.length, charCode = -1;...2014-06-07
- 这篇文章主要介绍了C#实现字符串转换成字节数组的简单实现方法,仅一行代码即可搞定,非常简单实用,需要的朋友可以参考下...2020-06-25
- 文章介绍一个实用的函数,我们如果用php substr来截取字符在中文上处理的很有问题,今天自己写了一个比较好的中文与英文字符截取的函数,有需要的朋友可以参考下。 ...2016-11-25
- 这篇文章主要介绍了C#实现对字符串进行大小写切换的方法,涉及C#操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了PostgreSQL 字符串处理与日期处理操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-01
- 这篇文章主要介绍了c#将字节数组转成易读的字符串的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
- 这篇文章主要介绍了C#获取字符串后几位数的方法,实例分析了C#操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了解决vue字符串换行问题(绝对管用),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-08-06
- 这篇文章主要介绍了C#判断一个字符串是否是数字或者含有某个数字的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了Substring截取字符串方法小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-06-25
- 在网站开发中,我们经常使用php similar text 计算两个字符串相似度;1,similar_text的用法 如果我想计算"ly89cn"和"ly89"的相似程度,有两种表示方法复制代码 代码如下: echo similar_text('ly89cn', 'ly89'); ...2015-11-08