Доброго времени суток всем. Есть строка неизвестной длины. Есть два ключевых слова в строке. Они известны.Нужно распознать содержимое между двух ключей. По ним обрезаю строку до необходимого размера. Обрезаю засунув строку в масив и удаляю ненужные зачения из массива. Потом собираю из массива нужную строку. Код (PHP): <? $a = "qwerty123456"; // данная строка $findme = '23'; // искомая подстрока $pos1 = strpos($a, $findme);// Позиция искомой подстроки в данной строке echo $pos1; echo ("<br>"); $pos2 = strlen($findme);//длинна искомой подстроки echo $pos2; echo ("<br>"); $arr1 = str_split($a);//Перевод строки в массив print_r($arr1); // Вырезаем лишнее до ключегого слова $x=-1; while ($x !== 2) { $x++; unset ($arr1[$x]); } echo ("<BR>"); print_r($arr1); echo ("<br>"); $cut_results = implode("", $arr1); echo ("$cut_results.<br>"); $b = ( $arr1[3]); $c = ($arr1[8].$arr1[9]); echo $b; echo ("<BR>"); Echo $c; echo ("<BR>"); echo gettype($a); echo "<br>"; echo gettype($b); echo "<br>"; echo gettype($c); echo "<br>"; ?> Я понимаю что я работаю со строковыми функциями , но почему $c типа string? Как привести ее к int?Была мысль прибавить 0 и тогда тип меняется на int. Но там может быть и буква и цифра. Мне надо каждый раз знать тип переменной. Т.к. от этого зависят дальнейшие действия. Как узнать тип переменной? Да это типа парсер страницы. Нет , нельзя прочитать весь html через curl. Там https и весь исходный код страницы это 8-9 ява-скриптов. Очень сильно извиняюсь. Ошибся веткой. Перенесите куда положенно.
входящие данные всегда имеют тип строки. подстрока от строки тоже имеет тип строки. чтоб превратить строку в любой другой - числовой, булев или что-то еще - тип, можно использовать соответствующие функции и конструкции каста. например кастовать строку в число можно через (int): Код (PHP): $sval = '102'; $ival = (int) $sval; // или $ival = intval($sval);
я пробовал gettype. тогда и буква становится int. А я не знаю что придет? Если бы знал , что придет. Возмжно я не совсем ясно выразился. Из строки "qwerty123456" найти соседние знаки от "34" спава и слево по 1 шт. И в зависисмости от того что за знак , буква или цифра продолжение скрипта отличается. Я вот думаю , а если через регулярку? Прогоняем сначала Код (PHP): /[^a-zA-ZА-Яа-я\s]/ , а потом Код (PHP): /[^0-9]/ и смотреть кто вернет True или False Добавлено спустя 42 минуты 56 секунд: Так и сделал прогнал по одному знаку через обе регулярки. И посмотрев кто вернул NULL увидел ,что идет до и после ключа.