Мой текущий проект состоит из UID, в котором он выглядит следующим образом
855FM21, 855FM22 и т. Д.
Я хочу, чтобы последний номер из UID, в котором это может быть сделано путем разделения строки.
Как разбить эту строку после подстроки «FM».?
Чтобы разбить эту строку после подстроки «FM», используйте explode
с разделителем как FM
, Нравится
$uid = "855FM22";
$split = explode("FM",$uid);
var_dump($split[1]);
Вы можете использовать метод explode ().
<?php
$UID = "855FM21";
$stringParts = explode("FM", $UID);
$firstPart = $stringParts[0]; // 855
$secondPart = $stringParts[1]; // 21
?>
использовать функцию взрыва, он возвращает массив. для получения последнего индекса используйте echo $ array [count ($ array) — 1];
<?php
$str = "123FM23";
$array = explode("FM",$str);
echo $array[count($array) - 1];
?>
Вы пробовали функцию взрыва php?
Для этого, пожалуйста, используйте функцию взрыва php.
$UID = "855FM21";
$splitToArray = explode("FM",$UID);
print_r($splitToArray[1]);
$uid = '123FM456';
$ArrUid = split( $uid, 'FM' );
if( count( $ArrUid ) > 1 ){
//is_numeric check ?!
$lastNumbers = $ArrUid[1];
}
else{
//no more numbers after FM
}
Вы также можете использовать регулярные выражения для извлечения последних чисел!
простой пример
$uid = '1234FM56';
preg_match( '/[0-9]+fm([0-9]+)/i', $uid, $arr );
print_r($arr); //the number is on index 1 in $arr -> $arr[1]
В качестве наилучшей практики никогда не запрашивайте в своем запросе mysql больше, чем вы на самом деле намереваетесь использовать. Акт расщепления uid
может быть сделано в самом запросе — и это было бы, я бы, наверное, сделал это.
SELECT SUBSTRING_INDEX(uid, 'FM', -1) AS last_number FROM `your_tablename`