2016-04-02 11 views
0
$t = ABCDEFPN03KSASDEID; 
$r = stristr($t, 'PN03', true); 

My Value is $r = ABCDEF 
and in if condition while i plan to seperate it throws output wrong 
But i want output $s = PNO3KSASDEID like this 

Kodum:
(kendiminmiş gibi değişken kullanılır)Nasıl istenilen kelime PHP'de değişken dize ayırmak için

$r = stristr($t, 'PN03', true); 
if(($s = substr($t, 'PNO3', false)) == true) { 
    $s = stristr($t, 'PNO3', false); 
    print_r($s); 
} 

çıkışı: PN03KSASDEID gereklidir.

Lütfen bana çözüm öner. terimi dizede bulunamazsa

cevap

1

, yeniden kullanılabilir fonksiyonlar

function str_split_term($string, $term) { 
    $pos = strpos($string, $term); 
    if ($pos === false) 
    return $string; 
    else 
    return substr($string, $pos); 
} 

Kişisel kullanım durumu

echo str_split_term('ABCDEFPN03KSASDEID', 'PN03'); // PN03KSASDEID 

da davranışlarını enkapsüle alışkanlığı değiştirilmemiş dize olacak çıkışını alın

echo str_split_term('ABCDEFPN03KSASDEID', 'ZZZ'); // ABCDEFPN03KSASDEID 

PHP7

PHP güncel bir sürümünü kullanıyorsanız ediyorsanız, sana işlevi

function str_split_term(string $string, string $term): string { 
    $pos = strpos($string, $term); 
    if ($pos === false) 
    return $string; 
    else 
    return substr($string, $pos); 
} 
tip ipuçları ekleme önermek
İlgili konular