des1roer
@des1roer
ученье - свет, а неученье - приятный полумрак

PHP регулярка для json?

парсю сайт. в js вижу

var datajs = {
        "CustomerName": "username surname",
        "Id": 5017859,
        "Deliveries": [{


как я могу получить CustomerName?

$name = null;
foreach($html->find("script") as $element) {
    $text = $element->innertext;

    $pattern = "/var datajs = {\"CustomerName\":\"(.*?)\"/";

    preg_match($pattern, $text, $m);
    if (!empty($m))
        $name = $m[1];
}
  • Вопрос задан
  • 192 просмотра
Решения вопроса 1
@xuxubla
Если я правильно понял вопрос, то нужно просто составить правильно регулярку.
/"CustomerName": "(.*)?"/

При этом нужно внимательно следить, есть ли там переносы строк (тогда использовать \s и \S).
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Если все что есть в файле это var datajs = {} - достаточно убрать var datajs = и у вас получится JSON, который уже можно разобрать обычным json_decode.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы