Как удалить начальные и конечные пробелы из строки

Метод query может возвращать false вместо набора результатов в случае возникновения ошибки. Вот почему вы получаете ошибку в вызове метода fetch_assoc , который, очевидно, не существует, когда $ result является false.

Это означает, что вы имеют ошибку в инструкции SELECT. Чтобы получить эту ошибку, сделайте следующее:

 $result = $conn->query($sql) or die($conn->error);

Скорее всего, у вас неправильное написание имени таблицы или имени столбца. Возможно, при переходе на хост вы не создали эту таблицу правильно и сделали там орфографическую ошибку.

Фактически вы должны увидеть ту же ошибку при выполнении одного и того же запроса через phpAdmin.

Также замените эту строку:

while(($row = $result->fetch_assoc()) !== null){

с помощью только:

while($row = $result->fetch_assoc()) {

Вы также можете добавить это для отладки:

echo "number of rows: " . $result->num_rows;
29
задан codeshinobi 8 September 2016 в 09:40
поделиться

9 ответов

String.Trim

Удаляет все начальные и конечные пробельные символы из текущего объекта String.

Использование:

txt = txt.Trim();

Если это не работает, весьма вероятно, что «пробелы» - это не пробелы, а какой-то другой непечатный или пробельный символ, возможно, табуляции. В этом случае вам нужно использовать метод String.Trim, который принимает массив символов:

  char[] charsToTrim = { ' ', '\t' };
  string result = txt.Trim(charsToTrim);

Источник

Вы можете добавить в этот список как и когда вы встречаете больше места, как символы, которые находятся во ваших входных данных. Хранение этого списка символов в вашей базе данных или конфигурационном файле также будет означать, что вам не нужно перестраивать приложение каждый раз, когда вы сталкиваетесь с новым символом для проверки.

71
ответ дан ChrisF 8 September 2016 в 09:40
поделиться

Используйте метод Trim.

1
ответ дан Erik B 8 September 2016 в 09:40
поделиться
 static void Main()
    {
        // A.
        // Example strings with multiple whitespaces.
        string s1 = "He saw   a cute\tdog.";
        string s2 = "There\n\twas another sentence.";

        // B.
        // Create the Regex.
        Regex r = new Regex(@"\s+");

        // C.
        // Strip multiple spaces.
        string s3 = r.Replace(s1, @" ");
        Console.WriteLine(s3);

        // D.
        // Strip multiple spaces.
        string s4 = r.Replace(s2, @" ");
        Console.WriteLine(s4);
        Console.ReadLine();
    }

ВЫХОД:

Он увидел симпатичную собаку. Было еще одно предложение. Он увидел симпатичную собаку.

0
ответ дан senzacionale 8 September 2016 в 09:40
поделиться

Я действительно не понимаю некоторых обручей, через которые прыгают другие ответы.

var myString = "    this    is my String ";
var newstring = myString.Trim(); // results in "this is my String"
var noSpaceString = myString.Replace(" ", ""); // results in "thisismyString";

Это не ракетостроение.

8
ответ дан Rich Bryant 8 September 2016 в 09:40
поделиться
txt = txt.Trim();
5
ответ дан RedFilter 8 September 2016 в 09:40
поделиться

Вы можете использовать:

  • String.TrimStart - Удаляет все начальные вхождения набора символов, указанных в массиве, из текущего объекта String.
  • String.TrimEnd - Удаляет все концевые вхождения набора символов, указанных в массиве, из текущего объекта String.
  • String.Trim - комбинация двух вышеуказанных функций

Использование:

string txt = "                   i am a string                                    ";
char[] charsToTrim = { ' ' };    
txt = txt.Trim(charsToTrim)); // txt = "i am a string"

РЕДАКТИРОВАТЬ:

txt = txt.Replace(" ", ""); // txt = "iamastring"   
16
ответ дан Martin Vseticka 8 September 2016 в 09:40
поделиться

Вы можете использовать

string txt = "                   i am a string                                    ";
txt = txt.TrimStart().TrimEnd();

Вывод «я строка»

-3
ответ дан Gayan Chinthaka Dharmarathna 8 September 2016 в 09:40
поделиться

text.Trim () должен использоваться

string txt = "                   i am a string                                    ";
txt = txt.Trim();
2
ответ дан anishMarokey 8 September 2016 в 09:40
поделиться

Или вы можете разбить строку на массив строк, разделив их по пробелам, а затем добавить каждый элемент массива строк в пустую строку.
Может быть, это не самый лучший и быстрый метод, но вы можете попробовать, если другой ответ не тот, который вы хотите.

4
ответ дан Samvel Siradeghyan 8 September 2016 в 09:40
поделиться
Другие вопросы по тегам:

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