Использование PHP Explode не выводит проанализированную строку - PullRequest
0 голосов
/ 11 марта 2019

У меня есть база данных, в которой я храню длинную строку в одном столбце.Я использую два разных разделителя.Я использую $$ для разделения 4 входов, которые пользователь может ввести.Я использую **, чтобы разделить каждый раз, когда пользователь вводит данные (следите за историческими данными).Я извлекаю данные и пытаюсь отобразить их в своем php-файле.Вот часть моего кода.Мой код работает, когда ** не найден разделитель (найден только $$).Однако, когда я ввожу оператор if из-за поиска **, мой код прекращает печать данных.Я не получаю ошибок, просто пустой раздел на моей странице.У меня что-то не так в то время как часть ($ lUB <$ bSize) {}? </p>

if ($userData[$index] != "")
 {
    if (strpos($userData[$index], '**') != false)
    {
     echo "here 0";
        $userDataB = explode("**", $userData[$index]);
        $lUB = 0;
        $bSize = count($userDataB);
        while ($lUB < $bSize)
        {
           $dataparse = explode("$$", $userDataB[$lUB]);
           echo ("<tr>");
           echo("<td>");
           echo  $dataparse[1];
           echo("</td>");
           echo("<td>");
           echo $dataparse[2];
           echo("</td>");
           echo("<td>");
           echo $dataparse[0];
           echo("</td>");
          echo("</tr>");
          unset($dataparse);
           $lUB = $lUB+1;
        }
    }
    else
    {
     echo "here 1";
        $dataparse = explode("$$", $userData[$index]);
        echo ("<tr>");
        echo("<td>");
        echo  $dataparse[1];
        echo("</td>");
        echo("<td>");
        echo $dataparse[2];
        echo("</td>");
        echo("<td>");
        echo $dataparse[0];
        echo("</td>");
       echo("</tr>");

    }
 }
 else
 {
    echo "here 2";
 }

1 Ответ

0 голосов
/ 11 марта 2019

Если строка находится в начале другой строки, strpos вернет 0, что равно false в блоке if, либо вы должны использовать оператор ===, либо пытаться использовать какую-то другую функцию.

...