Код (PHP): <form> <input type="text" name="string_one"/> <input type="text" name="string_two"/> <input type="text" name="symbol"/> <input type="submit" value="Отправить"/> </form> <?php Function myReplace ($string_one,$string_two,$symbol) { $count_one = 0; $count_two = 0; for ($i=0; $i<strlen($string_one); $i++) { if ($string_one[$i] == "$string_two") $count_one++; if ($string_one[$i] == "$symbol") $count_two++; } if ($count_one>$count_two) { echo "First string"; } if ($count_one<$count_two) { echo "Second string"; } } $string_one = $_REQUEST['string_one']; $string_two = $_REQUEST['string_two']; $symbol = $_REQUEST['symbol']; myReplace ($string_one,$string_two,$symbol); ?> Есть форма, где содержатся 3 поля, 2 из них для ввода строк, а одно для ввода исследуемого символа. Ввожу две строки и символ и извлекаю их. Программа должна выводить в какой из 2 двух строк больше исследуемых символов, а она ничего не выводит. Где нужно исправить? PHP, JavaScript, SQL и другой код пишите внутри тегов Код ( (Unknown Language)): [b]php][/b]Тут код[b][/[/b][b]code][/b][/color]
Код (PHP): $str1 = 'abc aaa bcd'; $str2 = 'abc def aba'; $symbol = 'a'; $cnt1 = substr_count($str1, $symbol); $cnt2 = substr_count($str2, $symbol); echo $cnt1 == $cnt2 ? 'Равное число' : ( $cnt1 > $cnt2 ? 'В первой больше' : 'Во второй больше' ); Если нужна регистронезависимость, то можно так: Код (PHP): substr_count(strtoupper($str), strtoupper($symbol)); P.S. mb_substr_count() - для мультибайтовых строк
Что-то я вас не понял. $str1 и $str2 - это будут ваши строки из двух первых input-ов. $symbol - тот самый символ, который нужно найти в этих строках. substr_count -возвращает число вхождений подстроки. В качестве такой подстроки, у вас выступает символ ($symbol) . Дальше идёт сравнение с помощью тернарного оператора