php substr replace(php 如何将一串字符插入到另一串字符串的指定位置)

本文目录
- php 如何将一串字符插入到另一串字符串的指定位置
- 同一个PHP文件中用substr_replace函数时出现乱码问题,用str_ireplace函数时正常,究竟问题出在哪儿了
- PHP数组如何转换为字符串
- php的substr_replace()和str_replace()有什么不同啊,都是吧字符串一部分替换’
- 请教php高手,关于substr()函数的使用
- php中怎么去除数字前面的0
- PHP大神路过留句代码,谢谢了. 循环查找替换字符串
php 如何将一串字符插入到另一串字符串的指定位置
以下是一个参考函数,
参数$str为,原始字符串,例如123456。
参数$i为,要插入的位置。
参数$substr为,要插入的字符串,例如hello。
返回值为最后结果,例如12345hello6
function str_insert($str, $i, $substr)
{
for($j=0; $j《$i; $j++){
$startstr .= $str;
}
for ($j=$i; $j《strlen($str); $j++){
$laststr .= $str;
}
$str = ($startstr . $substr . $laststr);
return $str;
}
同一个PHP文件中用substr_replace函数时出现乱码问题,用str_ireplace函数时正常,究竟问题出在哪儿了
需要从写 该函数
if($length && strlen($string) 》 $length) {
//截断字符
$wordscut = ’’;
if(strtolower($encoding) == ’utf-8’) {
//utf8编码
$n = 0;
$tn = 0;
$noc = 0;
while ($n 《 strlen($string)) {
$t = ord($string);
if($t == 9 || $t == 10 || (32 《= $t && $t 《= 126)) {
$tn = 1;
$n++;
$noc++;
} elseif(194 《= $t && $t 《= 223) {
$tn = 2;
$n += 2;
$noc += 2;
} elseif(224 《= $t && $t 《 239) {
$tn = 3;
$n += 3;
$noc += 2;
} elseif(240 《= $t && $t 《= 247) {
$tn = 4;
$n += 4;
$noc += 2;
} elseif(248 《= $t && $t 《= 251) {
$tn = 5;
$n += 5;
$noc += 2;
} elseif($t == 252 || $t == 253) {
$tn = 6;
$n += 6;
$noc += 2;
} else {
$n++;
}
if ($noc 》= $length) {
break;
}
}
if ($noc 》 $length) {
$n -= $tn;
}
$wordscut = substr($string, 0, $n);
} else {
for($i = 0; $i 《 $length - 1; $i++) {
if(ord($string) 》 127) {
$wordscut .= $string;
$i++;
} else {
$wordscut .= $string;
}
}
}
$string = $wordscut;
}
return trim($string);
}
这个函数 就不会有乱码了
PHP数组如何转换为字符串
PHP 中的 serialize() 函数可以实现
serialize()
产生一个可存储的值的表示,也就是把数组转化为一个可以保存的字符串
unserialize()
从已存储的表示中创建 PHP 的值,也就是把serialize()转化的字符串再还原为数组
例如:
《?php
$array = array(’a’,’b’);
$str = serialize($array);
echo $str;
$array_temp = unserialize($str);
print_r($array_temp);
?》
php的substr_replace()和str_replace()有什么不同啊,都是吧字符串一部分替换’
区别在于:
1.substr_replace():把字符串的一部分替换为另一个字符串.
str_replace():使用一个字符串替换字符串中的另一些字符
substr_replace() 用于把字符串的一部分替换为另一个字符串,返回混合类型。
语法:
mix substr_replace ( mixed string, string replacement, int start )
例如:
《?php
echo substr_replace(’abcdef’, ’###’, 1);//输出 a###
echo substr_replace(’abcdef’, ’###’, 1, 2);//输出 a###def
echo substr_replace(’abcdef’, ’###’, -3, 2);//输出 abc###f
echo substr_replace(’abcdef’, ’###’, 1, -2);//输出 a###ef
?》
注意:如果 start 是负数且 length 小于等于 start ,则 length 为 0。
str_replace()使用一个字符串替换字符串中的另一些字符,返回混合类型。
语法:
mixed str_replace( mixed search, mixed replace, mixed string )
例如:
《?php
echo str_replace("world","earth","Hello world!");//输出 Hello earth!
//替换多个,且第二个参数为空字符
echo str_replace("o","","Hello world!");//输出 Hell wrld!
//使用数组
$arr = array("e", "o");
$arr2 = array("x", "y");
echo str_replace($arr, $arr2, "Hello World of PHP", $i);//输出 Hxlly Wyrld yf PHP
echo $i;//输出4
?》
注意:1.该函数与 substr_replace() 不同之处是满足条件的都进行替换
2.该函数对大小写敏感。如需进行大小写不敏感的查找替换,请使用 str_ireplace()
请教php高手,关于substr()函数的使用
substr只提供字符提取功能,没有提供字符过滤功能
如果你要过滤数字的话,可以用str_replace函数
如果你要过滤数字就这么写
$number = array("0","1","2","3","4","5","6","7","8","9");
str_replace($number,"",substr(md5(time()),0,5))
这样,就是提当前时间的md5前5个字符,如果存在数字则将其替换成空字符串 比如2ef3c将变成 efc
字幕方法类似!
如果判断mysql有重复记录得看你数据库结构和你这个重复的标准是什么,没具体例子,不好说明
php中怎么去除数字前面的0
方法一:
$str = ’01’;
$str = str_replace ("0", "", $str);
方法二:
echo preg_replace(’/^0*/’, ’’, $string);
注:再好好学习php正则表达式如下:
ereg( "^+$ ",$str);
eregi( "^+$ ",$str);
is_float: 判断变数型态是否为浮点数型态。
is_int: 判断变数型态是否为整数型态。
is_integer: 判断变数型态是否为长整数型态。
is_long: 判断变数型态是否为长整数型态。
is_object: 判断变数型态是否为物件型态。
is_real: 判断变数型态是否为实数型态。
ereg -- 正则表达式匹配。若有有更多问题到后盾网论坛问题求助专区。
PHP大神路过留句代码,谢谢了. 循环查找替换字符串
$string="第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX第N个XXXXXX";
$search_str_number=preg_match_all("/第N个/",$string);//搜索有几个
$GLOBALS=1;
//替换函数
$result=preg_replace_callback("/第N个/",function(){
return "第".$GLOBALS++."个";
},$string);

更多文章:
avantage怎么设置为中文(Avantage安装丢失GIT)
2026年10月15日 03:00
activex控件未注册怎么办(登陆视频监控网页时提示activex控件未注册,怎么解决)
2026年10月14日 20:30
excel连接sql数据库教程(excel怎么连接sql数据库)
2026年10月14日 19:40






