php字元串對比
⑴ php語言中如何比較兩個字元串完全相等
== 判斷字元串相等應該可以呀。
== 對於這個 0 和 ''是相等的,因為他們是false.
=== 這個是絕對的等於。 你試試、
⑵ php 如何比較兩個中文字元串是否相等
普通比較用==類型和字元都比較用=== 即全等 比如 1和true用===比較的話就是不相等,用==比較的話就是相等的(前者是int型後者是bool型)1和"1"用===比較的話就是不相等,用==比較的話就相等(前者是int型,後者是str型)另:abc和Abc用==比較是不相等的.如果你在比較時出現另一個比較對像有可能大寫時,可以用strtolower把那個可能出現大寫的字元串轉成全小寫的再比較.
⑶ php 字元串比較,取不同
例子如下:
$a="abcde12";
$b="abcdf6";
echo"<pre>";
var_mp(diffStr($a,$b));
echo"</pre>";
/*
*比較字元串不同的字元
*@參數:$str1:第一個字元串,$str2:第二個字元串
*@返回值:不同字元串的數組,
*/
functiondiffStr($str1,$str2){
$sArr1=str_split($str1);
$sArr2=str_split($str2);
$num1=count($sArr1);
$num2=count($sArr2);
$aNew=array();
if($num1>$num2){
foreach($sArr1as$k=>$val){
if($num2>$k&&$val!=$sArr2[$k]){
$aNew[]=array('s1'=>$val,'s2'=>$sArr2[$k]);
}elseif($num2<=$k){
$aNew[]=array("s1"=>$val);
}
}
}elseif($num1<$num2){
foreach($sArr2as$k=>$val){
if($num1>$k&&$val!=$sArr1[$k]){
$aNew[]=array('s1'=>$sArr1[$k],'s2'=>$val);
}elseif($num1<=$k){
$aNew[]=array("s2"=>$val);
}
}
}elseif($num1==$num2){
foreach($sArr1as$k=>$val){
if($val!=$sArr2[$k]){
$aNew[]=array('s1'=>$val,'s2'=>$sArr2[$k]);
}
}
}
return$aNew;
}
⑷ PHP 中字元串與0最比較
不同變數類型進行比較的時候,PHP有內部機制進行轉換,再加以比較。
$test01 == 0
應該是把 $test01 轉化成整型再進行比較,所以結果就是 true 了。
如果不熟悉內部機制,在比較之前,盡量自己轉化為相同類型再進行比較。
比較安全的做法就是用 === (三個等於號),這樣不僅比較內容,還比較類型,如果類型不一致就按 false 處理。
⑸ php比較相似字元串的方法
本文實例講述了php比較相似字元串的方法。分享給大家供大家參考。具體分析如下:
這里通過php的similar_text函數比較兩個字元串的相似性。
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
$word2compare
=
stupid;
$words
=
array(
'stupid',
'stu
and
pid',
'hello',
'foobar',
'stpid',
'upid',
'stuuupid',
'sstuuupiiid',
);
while(list($id,
$str)
=
each($words)){
similar_text($str,
$word2compare,
$percent);
print
Comparing
'$word2compare'
with
'$str':
;
print
round($percent)
.
%n;
}
/*
Results:
Comparing
'stupid'
with
'stupid':
100%
Comparing
'stupid'
with
'stu
and
pid':
71%
Comparing
'stupid'
with
'hello':
0%
Comparing
'stupid'
with
'foobar':
0%
Comparing
'stupid'
with
'stpid':
91%
Comparing
'stupid'
with
'upid':
80%
Comparing
'stupid'
with
'stuuupid':
86%
Comparing
'stupid'
with
'sstuuupiiid':
71%
*/
希望本文所述對大家的php程序設計有所幫助。
⑹ php怎麼比較兩個字元串
$a="abcde12";
$b="abcdf6";
echo "<pre>";
var_mp(diffStr($a,$b));
echo "</pre>";
/*
*比較字元串不同的字元
*@參數:$str1:第一個字元串,$str2:第二個字元串
*@<a href="https://www..com/s?wd=%E8%BF%94%E5%9B%9E%E5%80%BC&tn=44039180_cpr&fenlei=-bIi4WUvYETgN-" target="_blank" class="-highlight">返回值</a>:不同字元串的數組,
*/
function diffStr($str1,$str2){
$sArr1 = str_split($str1);
$sArr2 = str_split($str2);
$num1 = count($sArr1);
$num2 = count($sArr2);
$aNew = array();
if($num1 > $num2){
foreach($sArr1 as $k=>$val){
if($num2 > $k && $val != $sArr2[$k]){
$aNew[] = array('s1'=>$val,'s2'=>$sArr2[$k]);
}elseif($num2 <= $k){
$aNew[] = array("s1"=>$val);
}
}
}elseif($num1 < $num2){
foreach($sArr2 as $k=>$val){
if($num1 > $k && $val != $sArr1[$k]){
$aNew[] = array('s1'=>$sArr1[$k],'s2'=>$val);
}elseif($num1 <= $k){
$aNew[] = array("s2"=>$val);
}
}
}elseif($num1 == $num2){
foreach($sArr1 as $k=>$val){
if($val != $sArr2[$k]){
$aNew[] = array('s1'=>$val,'s2'=>$sArr2[$k]);
}
}
}
return $aNew;
}
⑺ php 多個字元串比較是否相同
用explode把你的字元串分割為數組,然後對數組排序,最後把排序後的數組用implode合並為字元串,這時候比較的結果就是你需要的。
處理以上過程的例子代碼:
<?php
$str1='F002,F001';
$arr=explode(',',$str1);
sort($arr);
$new1=implode($arr,',');
echo$new1;
?>
⑻ php如何對比字元串內容
PHP中,可以用雙等號(==)或 三等號(===)來比較字元串。
二者的區別是:雙等號不比較類型,三等號會比較類型,但不轉換類型;用雙等號進行比較時,如果等號左右兩邊有數字類型的值,剛會把另一個值轉化為數字,然後進行比較。如果是純字元串或者NULL時,會轉化為0進行比較。同樣,大小於號也和等號一樣,比較時可能出現不正確的結果。
綜上所述,比較字元串可以用PHP的自帶函數strcmp和strcasecmp。其中strcasecmp是strcmp的變種,它會先把字元串轉化為小寫再進行比較。 如下代碼:
var_mp(0 == 'Test');
var_mp(0 == '');
var_mp(5 > 'T');
var_mp(strcmp(5, 'T'));
結果為(第1~3結果是不對的,只有第4個是對的)代碼如下:
bool(true)
bool(true)
bool(true)
int(-1)
⑼ php關於兩個字元串的比較!!
這類替換最好不好使用正則表達式,因為你搜索的內容的唯一的無需使用正在,而且替換的文本較大正則效率太低。
方法是找到這兩個特殊字元串的位置,然後使用substr刪除中間部分,例子代碼:
$str='....你要處理的字元串.....';
$s1='...開始字元串...';
$s2='...結束字元串...';
$i1=strpos($str,$s1);//開始位置
$i2=strpos($str,$s2);//結束位置
if
($i1!==false
&&
$i2!==false)//找到
$str=substr($str,0,$i1-1)
.
substr($str,$i2+strlen($s2));
⑽ PHP比較字元串 strcmp()函數問題
首先看位元組數是不對的。我測試了下,這個比較是從開始比,只要遇到不想等的就會出結果了。也就是說,如果str1的某個字元比str2小,則str1<str2,而不會按整個字元串來比較。單個字元按ASCii碼轉換後比較,規則是小寫字母大於大寫字母,字母往後越大。如a>A,a<b<c。