子字元串php
① php 怎麼截取漢字字元串
?php
$str = '這樣一來我的字元串就不會有亂碼^_^';
echo "mb_substr:" . mb_substr($str, 0, 7, 'utf-8');
//結果:這樣一來我的字
echo "
";
echo "mb_strcut:" . mb_strcut($str, 0, 6, 'utf-8');
//結果:這樣
?
首先
1.確保你的Windows/system32下有php_mbstring.dll這個文件,沒有就從你Php安裝目錄extensions里拷入Windows/system32裡面。
2.在windows目錄下找到php.ini打開編輯,搜索mbstring.dll,找到
;extension=php_mbstring.dll把前面的;號去掉,這樣mb_substr函數就可以生效了
mb_strcut函數功能也可以截取字元串長度,下面實例具體看看區別在哪:
mb_substr();
② 如何利用現有的PHP字元串函數判斷某個子字元串在原字元串第N次出現的位置 如何截取某個字元串前N個單詞呢
<?
$m='fdm';//母字元串
$s='ad';//子字元串 可以為多個字元
$n=4;//第n次
$o='';
$r=explode($s,$m);
foreach($r as $k=>$v){
if($k==$n)break;
$o.=$v."<font color=red>".$s."</font>";
}
echo $o;
/////////也可以寫成函數的形式
//font color 是方便你辨別 可以去掉 直接寫成$o.=$v.$s;
echo SplitString("","1","3");//三個參數分別是 母字元串 分割字元 取第幾個前面的字元串
function SplitString($m,$s,$n){
$r=explode($s,$m);
foreach($r as $k=>$v){
if($k==$n)break;
$o.=$v."<font color=red>".$s."</font>";
}
return $o;
}
?>
③ nginx判斷uri是否包含某值
方法一:查找、匹配字元串中的子字元串
strpos()函數
strpos()函數用於查找字元串中第一次出現的子字元串。如果子字元串存在,則該函數返回子字元串的起始索引,否則如果在字元串(URL)中找不到子字元串,則返回False。
註:strpos() 函數對大小寫敏感,區分大小寫。
示例:使用strpos()函數在URL中查找特定字元串。
header("content-type:text/html;charset=utf-8");
// 在URL中查找特定的子字元串
// 給定URL
$url = '//www.zzvips.com/php/';
echo 'URL為: '.$url.'
' ;
// 搜索子字元串
$key = 'php';
if (strpos($url, $key) == false) {
echo 'URL中不存在子字元串'.$key.'
' ;
}
else {
echo 'URL中存在子字元串 '.$key.'
' ;
}
// 搜索子字元串
$key = 'PHP';
if (strpos($url, $key) == false) {
echo 'URL中不存在子字元串 '.$key.'
' ;
}
else {
echo 'URL中存在子字元串 '.$key.'
' ;
}
?>
URL://www.zzvips.com/php/
URL中存在子字元串PHP
URL中不存在子字元串PHP
substr_count()函數
substr_count()函數用於計運算元串在字元串中出現的次數。當子串的出現次數大於等於1時,表明URL中包含這個子字元串。
示例:
header("content-type:text/html;charset=utf-8");
$url = 'http://www.jb1.net/php/';
$key = 'php';
// 搜索子字元串
if (substr_count($url, $key) == false) {
echo 'URL中不存在子字元串'.$key.'
' ;
}
else {
echo 'URL中存在子字元串 '.$key.'
' ;
}
$key = 'PHP';
if (substr_count($url, $key) == false) {
echo 'URL中不存在子字元串 '.$key.'
' ;
}
else {
echo 'URL中存在 '.$key.'
' ;
}
?>
輸出:
URL://www.zzvips.com/php/
URL中存在子字元串PHP
URL中不存在子字元串list
方法二:通過正則表達式查找匹配
preg_match()函數
preg_match()函數用於使用正則表達式搜索查找文本中模式的完全匹配。在給定正則表達式模式的情況下,該函數對文本進行搜索並找到完全匹配(如果存在)。如果存在,則此函數返回true;如果不存在,則返回false。
header("content-type:text/html;charset=utf-8");
// 在URL中查找特定的子字元串
// 給定URL
$url = 'http://www.jb1.net/php/';
echo 'URL為: '.$url.'
' ;
// 搜索子字元串
$pattern = '/\bphp\b/';
if (preg_match($pattern, $url) == false) {
echo 'URL中不存在php
';
}
else {
echo 'URL中存在php
';
}
$pattern = '/\bPHP\b/';
if (preg_match($pattern, $url) == false) {
echo 'URL中不存在PHP';
}
else {
'URL中不存在PHP';
}
?>
輸出:
URL://www.zzvips.com/php/
URL中存在PHP