跟我学习php字符串常用函数-下篇

1> mixed parse_url ( string $url [, int $component = -1 ] )

解析url

  • $component, 指定获取的部分,不写,返回一个关联数组,包含所有url信息 指定 PHP_URL_SCHEME、 PHP_URL_HOST、 PHP_URL_PORT、 PHP_URL_USER、 PHP_URL_PASS、 PHP_URL_PATH、 PHP_URL_QUERY 或 PHP_URL_FRAGMENT 的其中一个来获取 URL 中指定的部分的 string。 (除了指定为 PHP_URL_PORT 后,将返回一个 integer 的值)。
$url = 'http://username:password@hostname/path?arg=value#anchor';
print_r( parse_url($url) );
echo parse_url($url, PHP_URL_PATH);//输出: /path
/*
输出:
Array
(
    [scheme] => http
    [host] => hostname
    [user] => username
    [pass] => password
    [path] => /path
    [query] => arg=value
    [fragment] => anchor
)
*/

2> void parse_str ( string $str [, array &$arr ] )

从字符串中解析出多个变量,可以和 parse_url 函数结合使用

  • $arr, 如果设置了第二个变量 arr,会将解析出来的变量存入数组
$url = "http://www.web.com?act=login&id=111";
$query = parse_url($url, PHP_URL_QUERY);
parse_str($query);
echo $act;//输出: login
echo $id;//输出: 111

3> string mb_substr ( string $str , int $start [, int $length = NULL [, string $encoding = mb_internal_encoding() ]] )

根据编码方式截取字符串

  • $start, 开始索引
  • $length, 从索引以编码方式为一个单元截取的长度
  • $econding, 编码方式, 和文件编码方式有关系
header('content-type: text/html; charset=utf-8;');
$str = "做人不能欺骗自己";
echo mb_substr($str, 0, 6, 'UTF-8');//输出: 做人不能欺骗

4.> mixed strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )

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

  • $haystack, 在hanstack字符串中查找
  • $needle, 查找什么字符
  • $offset, 查找的起始索引
  • 返回, 成功返回对应的索引位置,没查到返回false
$str = 'abcabc';
echo strpos($str, 'a', 1);//输出: 3

5> int strlen ( string $string )

获取字符串的长度

6> string strrev ( string $string )

返回反转后的字符串

7> string substr ( string $string , int $start [, int $length ] )

截取字符串

  • start, 起始索引
  • $length, 截取的长度,不写截取到最后
$str = 'a/b.txt';
echo substr($str, strpos($str, '/')+1 ); //输出: b.txt

8> string strtolower ( string $string )

将字符串转化为小写并返回

string strtoupper ( string $string )

将字符串转化为大写并返回

9> mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

替换字符串中的某些字符,区分大小写。str_ireplace函数忽略大小写

  • $search, 要被替换的字符或字符串
  • $replace, 替换的心字符或字符串
  • $subject, 替换的对象,即总字符串
  • $count, 替换发生的次数
$str = 'a,b,c';
echo str_replace(',', ' ', $str);//输出: a b c

10> int strcmp ( string $str1 , string $str2 )

比较字符串是否相等,是区分大小写的。strcasecmp函数忽略大小写

  • 如果 str1 小于 str2 返回 < 0; 如果 str1 大于 str2 返回 > 0;如果两者相等,返回 0。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏郑科的专栏

PHP7 新特性简介(一)

PHP7是PHP编程语言全新的一个版本,在性能方面获得了极大的提升。官方的文档显示,PHP7可以达到PHP5.x版本两倍的性能。同时还提供了很多其他语言流行的语...

5890
来自专栏林德熙的博客

C# const 和 readonly 有什么区别

在写常量的时候,是选择使用 const 还是 static readonly 是一个让人难以决定的问题,本文告诉大家这两个方法的区别。

982
来自专栏云霄雨霁

发布与逸出

1183
来自专栏阿凯的Excel

Python读书笔记17(while与列表、字典)

今天分享利用while函数处理列表和字典,顺便温习一下历史知识 一、论如何将一个列表折腾至另外一个列表!(两个列表是独立的) 论折腾列表有几种方法! 先分...

3665
来自专栏从流域到海域

《笨办法学Python》 第11课手记

《笨办法学Python》 第11课手记 本节课讲了一个用来输入的函数raw_input,而我们一直用的print其实是一个用来输出的函数。 原代码如下: pri...

1999
来自专栏大闲人柴毛毛

三分钟理解“模板方法模式”——设计模式轻松掌握

模板方法模式的官方定义: 在模板方法模式中,只定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重新定义该算法的某些特定...

35610
来自专栏知识分享

关于函数指针--简介

函数指针说白了,,,,函数的地址 现在看一个简单的--先定义一个函数指针 void (*f1)();就是这样定义--指向的是一个void类型的 假设定义了另一个...

2938
来自专栏C语言及其他语言

[蓝桥杯]Hello, world!

题目描述 This is the first problem for test. Since all we know the ASCII code, your ...

3458
来自专栏电光石火

PHP获取时间戳的毫秒

php获取时间的方式是time(); 那么如果是涉及需要精细的时间的应用,那么怎么获取呢? /** 获取当前时间戳,精确到毫秒 */ functi...

3279
来自专栏青青天空树

2017-统计字符个数

输入:输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。

1041

扫码关注云+社区