字符串函数复习

/**
 * @FunctionName addcslashes()
 * @Action 返回在指定字符前添加反斜杠的字符串
 * @Param1 原字符串 
 * @Param2 指定的字符
 **/
    $str = addcslashes('A001,A002,A003', 'A');
    echo $str;
    //\A001,\A002,\A003
    echo '<br>';

/**
 * @FunctionName addslashes()
 * @Action 返回在预定义字符([单引号,双引号,反斜杠,null])前添加反斜杠的字符串
 * @Param1 原字符串
 **/
    $str = addslashes('Shanghai is the "biggest" city in China.');
    echo $str;
    //Shanghai is the \"biggest\" city in China.
    echo '<br>';

/**
 * @FunctionName quotemeta()
 * @Action 函数在字符串中某些预定义的字符前添加反斜杠
 * @Action 预定义字符.\*+()?[]^&
 * @Param2 
 **/


/**
 * @FunctionName stripcslashes()
 * @Action 删除由addcslashes函数添加的反斜杠
 * @Param1 要检查的字符串
 **/
    $str = stripcslashes('\A001,\A002,\A003');
    echo $str;
    //A001,A002,A003
    echo '<br>';

/**
 * @FunctionName stripslashes()
 * @Action 删除有addslashes()函数添加的反斜杠
 * @Param1 要检查的字符串
 **/
    $str = stripslashes("Who\'s Bill Gates?");
    echo $str;
    //Who's Bill Gates?
    echo '<br>';

/**
 * @FunctionName ltrim()
 * @Action 移除字符串左侧的空白字符或其他字符
 * @Param1 原字符串
 **/

/**
 * @FunctionName rtrim() chop()
 * @Action 移除字符串右侧的空白字符或其他字符
 * @Param1 原字符串
 **/

/**
 * @FunctionName trim()
 * @Action 移除字符串两端的空白字符或其他字符
 * @Param1 原字符串
 **/

/**
 * @FunctionName chr()
 * @Action 从指定的ASCII值返回字符
 * @Param1 ASCII值
 * @Return 字符
 **/
    echo chr(97);
    //a
    echo '<br>';

/**
 * @FunctionName ord()
 * @Action 返回字符串第一个字符的ASCII
 * @Param1 原字符串
 * @Return ASCII值
 **/
    echo ord('abc');
    //97
    echo '<br>';

/**
 * @FunctionName crypt()
 * @Action 单向加密
 * @Param1 字符串
 * @使用的时候注意PHP配置的常量
 **/

/**
 * @FunctionName explode()
 * @Action 字符串转换数组
 * @Param1 规定在哪里分割
 * @Param2 原字符串
 * @Return 数组
 **/
    $str = "Hello world. I love Shanghai!";
    $array = explode(" ", $str);
    echo '<pre>';
    print_r($array);
    echo '</pre>';
    // Array
    // (
    //     [0] => Hello
    //     [1] => world.
    //     [2] => I
    //     [3] => love
    //     [4] => Shanghai!
    // )
    echo '<br>';

/**
 * @FunctionName implode() join()
 * @Action 数组转字符串(返回由数组元素组合成的字符串)
 * @Param1 规定数组元素之间放置的内容
 * @Param2 array()
 **/
    $str = implode(' ', array('Hello', 'World!', 'I'));
    echo $str;
    //Hello World! I
    echo '<br>';




/**
 * @FunctionName echo()
 * @Action 输出一个或多个字符串
 * @Param1 原字符串
 **/


/**
 * @FunctionName fprintf()
 * @Action 把格式化的字符串写入到指定的输出流(文件或数据库)。不会输出字符串
 * @Param1 文件流
 * @Param2 格式化的字符串
 * @Param3 填充的内容
 * @Return 返回被写字符串的长度
 **/
    $file = fopen("./test.txt", "w");
    echo fprintf($file, "There are %u million bicycles in %s.", 9, 'beijing');
    //40
    echo '<br>';

/**
 * @FunctionName printf() 同sscanf()反义
 * @Action 输出格式化字符串,直接输出
 * @Param1 格式化字符串
 * @Param2 填充的
 **/
    printf("在%s有 %u 百万辆自行车。", 'beijing', 9);
    //在beijing有 9 百万辆自行车。
    echo '<br>';

/**
 * @FunctionName sprintf()
 * @Action 把格式化的字符串写入字符串
 * @Param1 格式化的字符串
 * @Param2 填充的
 * @Return 填充后的字符串,需要用变量接收
 **/
    $str = sprintf("There are %u million cars in %s.", 9, 'beijing');
    echo $str;
    //There are 9 million cars in beijing.
    echo '<br>';

/**
 * @FunctionName vfprintf()
 * @Action 函数把格式化的字符串写到指定的输出流(例如:文件或数据库)
 * @Param1 与 fprintf() 不同,vfprintf() 中的参数位于数组中
 * @Param2 vfprintf($file,"There are %u million bicycles in %s.",array($number,$str))
 **/

/**
 * @FunctionName vsprintf()
 * @Action 把格式化字符串写入变量中
 * @Param1 与 sprintf() 不同,vsprintf() 中的参数位于数组中
 **/

/**
 * @FunctionName vprintf()
 * @Action 函数输出格式化的字符串
 * @Param1 与 printf() 不同,vprintf() 中的参数位于数组中
 **/

/**
 * @FunctionName print()
 * @Action 函数输出一个或多个字符串
 * @Param1 string
 **/


/**
 * @FunctionName lcfirst()
 * @Action 字符串首字符转换为小写。
 * @Param1 string
 **/
    echo lcfirst('Hello');
    //hello
    echo '<br>'; 

/**
 * @FunctionName ucfirst()
 * @Action 把字符串中的首字符转换为大写
 * @Param1 string
 **/

/**
 * @FunctionName ucwords()
 * @Action 把字符串中每个单词的首字符转换为大写
 * @Param1 string
 **/

/**
 * @FunctionName strtolower()
 * @Action 把字符串转换为小写
 * @Param1 string
 **/

/**
 * @FunctionName strtoupper()
 * @Action 把字符串转换为大写
 * @Param1 string
 * @Param2 
 **/

/**
 * @FunctionName md5() 同sha1()
 * @Action 计算字符串的md5散列
 * @Param1 string
 * @Param2 true(16 字符二进制格式)  /false 默认 (32 字符十六进制数)
 **/
    echo md5('Hello');
    //8b1a9953c4611296a827abf8c47804d7
    echo '<br>';
    echo md5('Hello', true);//乱码
    echo '<br>';

/**
 * @FunctionName md5_file() 同 sha1_file()
 * @Action 检测 "test.txt"是否已被,更改即MD5散列是否已被更改
 * @Param1 文件
 * @Param2 true/false
 **/

/**
 * @FunctionName number_format(number, decimals, decimalpoint, separator)
 * @Action 千分位分组格式化数字
 * @Param1 number
 * @Param2 规定小数位数
 * @Param3 用此参数代替小数点
 * @Param4 千分位分隔符
 **/
    echo number_format('5000000');//5,000,000
    echo '<br>';
    echo number_format('4999.9');//5,000
    echo '<br>';
    echo number_format('4999.9', 2);//4,999.90
    echo '<br>';
    echo number_format('4999.9', 2, 'x', ',');//4,999x90
    echo '<br>';

/**
 * @FunctionName parse_str()
 * @Action 把字符串解析到变量中
 * @Param1 string
 * @Param2 可选,Array 如果未设置 array 参数,则由该函数设置的变量将覆盖已存在的同名变量。
 * @Retrun 没有返回值
 **/
    parse_str('name=zhang&age=18',$array);
    echo '<pre>';
    print_r($array);
    echo '</pre>';
    // Array
    // (
    //     [name] => zhang
    //     [age] => 18
    // )
    echo '<br>';

/**
 * @FunctionName chunk_split()
 * @Action 分割字符串
 * @Param1 原字符串
 * @Param2 可选,定义字符串块的长度,默认76
 * @Param3 可选,定义在每个字符串块的末端放置的内容。默认/r/n
 * @Return 字符串
 **/
    $str = chunk_split('Hello world!', 6, '...');
    //Hello ...world!...
    echo $str;
    echo '<br>';

/**
 * @FunctionName str_replace(find, replace, string, count)
 * @Action 函数以其他字符替换字符串中的一些字符(区分大小写)
 * @Param1 要查找的值
 * @Param2 替换的值 
 * @Param3 被搜索的字符串
 * @Param4 可选,替换的次数 
 **/
    echo str_replace("world","Shanghai","Hello world!");
    echo '<br>';

/**
 * @FunctionName str_ireplace(find, replace, string, count)
 * @Action 函数以其他字符替换字符串中的一些字符(不区分大小写)
 * @Param1 
 * @Param2 
 **/

/**
 * @FunctionName str_pad(string,length,pad_string,pad_type)
 * @Action 把函数填充为新的长度
 * @Param1 string
 * @Param2 length
 * @Param3 填充的字符串
 * @Param4 可选,默认右侧填充。
 **/
    echo str_pad('acbdred', 30, '78');
    echo '<br>';

/**
 * @FunctionName str_repeat(string, number)
 * @Action 重复字符串
 * @Param1 string
 * @Param2 重复次数
 * @Return 返回重复后的字符串
 **/
    echo str_repeat('abc', 8);
    echo '<br>';

/**
 * @FunctionName str_shuffle(string)
 * @Action 随机打乱字符串中的所有字符
 **/
    echo str_shuffle('abcdef');
    echo '<br>';

/**
 * @FunctionName str_split(string,length)
 * @Action 把字符串分割到数组中
 * @Param1 string
 * @Param2 number
 **/
    echo '<pre>';
    print_r(str_split('abcdfgh', 2));
    echo '</pre>';
    // Array
    // (
    //     [0] => ab
    //     [1] => cd
    //     [2] => fg
    //     [3] => h
    // )

    echo '<br>';
/**
 * @FunctionName str_word_count(string,return,char)
 * @Action 计算字符串中的单词数
 * @Param1 string
 * @Param2 return=1(默认) 返回字符串中的单词的个数
 * @Param2 return=2 返回包含字符串中的单词的数组
 * @Param2 return=3 返回一个数组,其中的键名是单词在字符串中的位置,键值是实际的单词
 * @Param3 char 被算作单词的特殊字符(比如,.*)
 **/
    echo '<pre>';
    print_r(str_word_count('I love Shanghai!'));
    echo '</pre>';
    echo '<br>';

/**
 * @FunctionName strchr(string,search,before_search) 是strstr() 函数的别名
 * @Action 搜索字符串在另一个字符串中的第一次出现,对大小写敏感
 * @Param1 要搜索的字符串
 * @Param2 被搜索的字符串
 * @Param3 如果设置为 "true",它将返回 search 参数第一次出现之前的字符串部分
 **/
    echo strchr('I Hello world me!', 'Hello', true);//I Hello (hello后面有空格)
    echo '<br>';
    echo strchr('I Hello world me!', 'Hello');//world me!
    echo '<br>';

/**
 * @FunctionName strrchr(string,search,before_search)
 * @Action 搜索字符串在另一个字符串中的最后一次出现
 */

/**
 * @FunctionName stristr(string,search,before_search)
 * @Action 搜索字符串在另一个字符串中的第一次出现,对大小写不敏感
 */

/**
 * @FunctionName strpos(string,find,start)
 * @Action 查找字符串在另一个字符串中第一次出现的位置
 * @Param1 被查找的字符串
 * @Param2 要搜索的的字符串
 * @Param3 从哪个位置开始查找,默认(0)
 **/
    echo strpos("You love php, I love php too!", "php", 10);//21
    echo '<br>';

/**
 * @FunctionName stripos()
 * @Action 查找字符串在另一字符串中第一次出现的位置(不区分大小写)
 **/

/**
 * @FunctionName strripos()
 * @Action 查找字符串在另一字符串中最后一次出现的位置(不区分大小写)
 **/

/**
 * @FunctionName strrpos()
 * @Action 查找字符串在另一字符串中最后一次出现的位置(区分大小写)
 **/

/**
 * @FunctionName strlen()
 * @Action 统计字符串的长度
 **/

/**
 * @FunctionName strrev()
 * @Action 反转字符串
 **/

/**
 * @FunctionName substr(string, start,length)
 * @Action 截取字符串
 * @Param1 string
 * @Param2 number,开始位置
 * @Param3 number,截取的长度
 **/

/**
 * @FunctionName wordwrap(string,width,break,cut)
 * @Action 按照指定长度对字符串进行折行处理
 **/

/**
 * @FunctionName htmlspecialchars()
 * @Action 把一些预定义的字符转换为 HTML 实体
 **/
    $str = 'I love "PHP".';
    echo $str;//I love "PHP".
    echo '<br>';
    echo htmlspecialchars($str); //I love &quot;PHP&quot;.
    echo '<br>';
/**
 * @FunctionName htmlspecialchars_decode()
 * @Action 把一些预定义的 HTML 实体转换为字符
 **/
    $str = "I love &quot;PHP&quot;";
    echo $str;//I love &quot;PHP&quot;
    echo '<br>';
    echo htmlspecialchars_decode($str);//I love "PHP"
    echo '<br>';

/**
 * @FunctionName strip_tags()
 * @Action 从字符串中去除 HTML 和 PHP 标记
 **/
    $text = '<p>Test paragraph.</p><!-- Comment --> <a href="#fragment">Other text</a>';
    echo strip_tags($text);//Test paragraph. Other text
    echo '<br>';

/**
 * @FunctionName pathinfo()
 * @Action 返回文件路径的信息
 * @Param1 文件的路径
 **/
    $path_parts  =  pathinfo ( '/www/htdocs/inc/lib.inc.php' );
    echo  $path_parts [ 'dirname' ],  "\n" ;
    echo  $path_parts [ 'basename' ],  "\n" ;
    echo  $path_parts [ 'extension' ],  "\n" ;
    echo  $path_parts [ 'filename' ],  "\n" ; 
    echo '<br>';

/**
 * @FunctionName dirname()
 * @Action 返回路径中的目录部分
 * @Param1 文件的路径
 **/
    echo dirname("c:/testweb/home.php");
    echo '<br>';
    echo dirname("/testweb/home.php");
    echo '<br>';

/**
 * @FunctionName parse_url()
 * @Action 解析 URL,返回其组成部分
 **/
    $url  =  'http://username:password@hostname/path?arg=value#anchor' ;
    print_r ( parse_url ( $url ));
    echo '<br>';

猜你喜欢

转载自blog.csdn.net/darkangel1228/article/details/80022058
今日推荐