PHP substr_replace()函数的几个应用例子

把字符串的一部分替换为另一个字符串
服务器君一共花费了467.454 ms进行了5次数据库查询,努力地为您提供了这个页面。
试试阅读模式?希望听取您的建议

substr_replace()函数介绍

substr_replace() 函数把字符串的一部分替换为另一个字符串。

语法:substr_replace(string,replacement,start,length)

  • 参数string,必需。规定要检查的字符串。
  • 参数replacement,必需。规定要插入的字符串。
  • 参数start,必需。规定在字符串的何处开始替换。正数 - 在第 start 个偏移量开始替换;负数 - 在从字符串结尾的第 start 个偏移量开始替换;0 - 在字符串中的第一个字符处开始替换。
  • 参数charlist,可选。规定要替换多少个字符。正数 - 被替换的字符串长度;负数 - 从字符串末端开始的被替换字符数;0 - 插入而非替换。

如果 start 是负数且 length 小于等于 start,则 length 为 0。

Program List:substr_replace()函数基本用法

    
<?php
	$var = 'ABCDEFGH:/MNRPQR/';
	echo "Original: $var<hr />\n";
	/* These two examples replace all of $var with 'bob'. */
	echo substr_replace($var, 'bob', 0) . "<br />\n";
	echo substr_replace($var, 'bob', 0, strlen($var)) . "<br />\n";
	/* Insert 'bob' right at the beginning of $var. */
	echo substr_replace($var, 'bob', 0, 0) . "<br />\n";
	/* These next two replace 'MNRPQR' in $var with 'bob'. */
	echo substr_replace($var, 'bob', 10, -1) . "<br />\n";
	echo substr_replace($var, 'bob', -7, -1) . "<br />\n";
	/* Delete 'MNRPQR' from $var. */
	echo substr_replace($var, '', 10, -1) . "<br />\n";
?>

程序运行结果:

Original: ABCDEFGH:/MNRPQR/
bob
bob
bobABCDEFGH:/MNRPQR/
ABCDEFGH:/bob/
ABCDEFGH:/bob/
ABCDEFGH://

Program List:将过长的字符串用省略号代替一部分

下面的程序可以将过长的字符串保留首尾,中间用省略号代替。

    
<?php
	$longString = 'abcdefghijklmnopqrstuvwxyz0123456789z.jpg';
	$separator = '...';
	$separatorlength = strlen($separator) ;
    // 需要保留的字符串
	$maxlength = 25 - $separatorlength;
    // 从一半的长度开始
	$start = $maxlength / 2 ;
    // 计算偏移量
	$trunc =  strlen($longString) - $maxlength;
	echo substr_replace($longString, $separator, $start, $trunc);
	//prints "abcdefghij...56789z.jpg"
?>

程序运行结果:

abcdefghijk...456789z.jpg

Program List:将多出的字符用省略号代替

  
<?php
function truncate($text,$numb) 
{
	$text = html_entity_decode($text, ENT_QUOTES);
	if (strlen($text) > $numb) 
	{
		$text = substr($text, 0, $numb);
		$text = substr($text,0,strrpos($text," "));
    	//This strips the full stop:
    	if ((substr($text, -1)) == ".") 
		{
        	$text = substr($text,0,(strrpos($text,".")));
    	}
		$etc = "..."; 
		$text = $text.$etc;
	} 
	$text = htmlentities($text, ENT_QUOTES); 
	return $text;
}
//Call function
$text = 'welcome to nowamagic, welcome to nowamagic, welcome to nowamagic';
$result = truncate($text, 35);
echo $result;
?>

程序运行结果:

welcome to nowamagic, welcome to...

Program List:给金钱数额加上逗号

  
<?php 
	$price = "163000"; 
	$price = substr_replace($price, ',', -3, 0); 
	echo $price;
?>

程序运行结果:

163,000

本文地址:http://www.nowamagic.net/librarys/veda/detail/412,欢迎访问原出处。

不打个分吗?

转载随意,但请带上本文地址:

http://www.nowamagic.net/librarys/veda/detail/412

如果你认为这篇文章值得更多人阅读,欢迎使用下面的分享功能。
小提示:您可以按快捷键 Ctrl + D,或点此 加入收藏

阅读一百本计算机著作吧,少年

很多人觉得自己技术进步很慢,学习效率低,我觉得一个重要原因是看的书少了。多少是多呢?起码得看3、4、5、6米吧。给个具体的数量,那就100本书吧。很多人知识结构不好而且不系统,因为在特定领域有一个足够量的知识量+足够良好的知识结构,系统化以后就足以应对大量未曾遇到过的问题。

奉劝自学者:构建特定领域的知识结构体系的路径中再也没有比学习该专业的专业课程更好的了。如果我的知识结构体系足以囊括面试官的大部分甚至吞并他的知识结构体系的话,读到他言语中的一个词我们就已经知道他要表达什么,我们可以让他坐“上位”毕竟他是面试官,但是在知识结构体系以及心理上我们就居高临下。

所以,阅读一百本计算机著作吧,少年!

《重来:更为简单有效的商业思维》 贾森•弗里德(Jason Fried) (作者), 大卫•汉森(David Heinemeier Hansson) (作者), Mike Rohde (插图作者), 李瑜偲 (译者)

这本书呈现的是一种更好、更简单的经商成功之道。读完这本书,你就会明白为什么计划实际上百害而无一益,为什么你不需要外界投资人,为什么将竞争视而不见反倒会发展得更好。事实是你所需要的比你想象的少得多。你不必成为工作狂,你不必大量招兵买马,你不必把时间浪费在案头工作和会议上,你甚至不必拥有一间办公室。所有这些都仅仅是借口!

更多计算机宝库...