PHP strrchr parse int

У меня проблема. Это мой код PHP:

$extract = $query;
$extractpoint = strrchr($extract, ".");

Итак, $ extract - это parse_url моего сайта. Пример: http://test.com/?param.6

$ extract = param.6 и $ extractpoint = .6

НО, я хочу, чтобы у решения было только 6, без смысла.

Вы можете помочь мне с этим?

3 ответа

Решение

Самым простым решением будет реструктуризация URL. Я это не возможно, хотя вы можете использовать strpos чтобы найти позицию вашего конкретного персонажа, а затем использовать substr выбрать символы после него.

$extract = 'param.6';
echo substr($extract, strpos($extract, '.') + 1);

Демо: https://3v4l.org/CudTAG

(The +1 потому что он возвращает позицию матча, и вы хотите быть на одно место после этого)

Есть разные способы:

  1. Фильтровать только числа:

    $int = filter_var($extractpoint, FILTER_SANITIZE_NUMBER_INT);

  2. Заменить точку

    $int = str_replace('.', '', $extractpoint) //$int = str_replace('param.', '', $extractpoint)

  3. Используйте регулярное выражение

    /[0-9+]/'

strrchr() Результат подсчета последнего экземпляра символа в строке. Чтобы получить следующий символ, добавьте 1 к счету. Тогда используйте substr() извлечь следующий символ из строки.

Другие вопросы по тегам