Я освобождаю текст от Android в качестве данных поста, это может быть алфавит или смайлики, как проверить, что если смайликов не должно быть больше 25 на стороне сервера в php.
пожалуйста, помогите мне
Спасибо
Вам нужна функция substr_count из SPL, ссылка: function.substr-count.php
//Maximum numbers of emoticons
$iMaxEmoticons = 3;
//List of emoticons, each of them
$aEmoticonsList = array(
':)',
';)',
':>',
':(',
//......
);
$sMessage = $_POST['androidMessage'];
$iEmoticonsCount = 0;
//Count each occurrence of emoticons
foreach ($aEmoticonsList as $sEmoticon) {
//for utf8, use mb_substr_count instead
$iEmoticonsCount += substr_count($sMessage, $sEmoticon);
}
//Check if maximum of emoticons is reached, print message and exit
if($iEmoticonsCount > $iMaxEmoticons){
exit("Error max of ({$iMaxEmoticons}) emoticons reached, count {$iEmoticonsCount}.");
}
использование mb_substr_count(Для подсчета количества вхождений подстроки).
//Function to return array of check emoticons...
function emoticons() {
$arrIcons = array(
':)',
':-)',
':D',
':d',
';)',
':P',
':-P',
':-p',
':p',
':(',
':o',
':O',
':0',
':|',
':-|',
':/',
':-/'
);
return $arrIcons;
}//Check for emoticons...
$maxAllowIcon = 25;
$txtMYTEXTBOX = $_REQUEST['MYTEXTBOX'];//Get textbox inputed value...
$arrExistIcon = emoticons();//Get predefined icons...
//Check for how many emoticons used...
$cntEmoticons = 0;
foreach($arrExistIcon AS $keyImoticons => $emotIcons){
$cntEmoticons += mb_substr_count($txtMYTEXTBOX, $emotIcons);
}
//If icons more then maximum allowed then print message...
if($cntEmoticons > $maxAllowIcon){
print('ERROR :: Maximum ' . $maxAllowIcon . ' emoticons allowed');
exit;
}
Вы хотите проверить это на Android или сервере?