Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Получить значения с строки
Форумы портала PHP.SU » » Вопросы новичков » Получить значения с строки

Страниц (1): [1]
 

1. mrKotik - 05 Июня, 2018 - 19:14:20 - перейти к сообщению
Добрый день, надо как-то получить значение из строки:

$getinfo = "api.Login('87292', '10');";

Надо получить: 87292, 10

preg_match_all("# api.Login('(.*?)', '(.*?)')#is", $getinfo, $arr);


print_r($arr);

В итоге пустой массив, что я делаю не так?
2. Строитель - 05 Июня, 2018 - 19:52:40 - перейти к сообщению
mrKotik пишет:
что я делаю не так?
Вы не экранируете точку и скобки: точка вне символьного класса [...] означает почти любой символ (это поведение зависит от модификатора s), а скобки - группировку с последующим сохранением найденных подстрок:
Спойлер (Отобразить)
3. mrKotik - 05 Июня, 2018 - 22:10:02 - перейти к сообщению
Строитель пишет:
mrKotik пишет:
что я делаю не так?
Вы не экранируете точку и скобки: точка вне символьного класса [...] означает почти любой символ (это поведение зависит от модификатора s), а скобки - группировку с последующим сохранением найденных подстрок:
Спойлер (Отобразить)



Спасибо большое)))
4. Dee - 06 Июня, 2018 - 00:45:16 - перейти к сообщению
Если будет приходить похожая строка и в ней будут меняться лишь числа:
PHP:
скопировать код в буфер обмена
  1. $getinfo = "api.Login('87292', '10');";
  2. preg_match_all("/\d+/", $getinfo, $arr);
  3. $return = $arr[0][0].",".$arr[0][1];
  4. print_r($return);  

 

Powered by ExBB FM 1.0 RC1