Не выводит весь результат

251
30 января 2018, 11:19

Моя проблема такова..

Я написал код на языке PHP, указал слово, по которому будет искать город, но почему-то я не могу получить все результаты (80+). У меня выводит только 1 город [Набережные Челны]

$word = "казан";
$e = mb_substr($word, mb_strlen($word)-1, 1);
$db = new \SQLite3(__DIR__ . '/citi_bot/citi.db');
$l = mb_strtoupper($e);
$k = $db->query("SELECT Город FROM Лист1 WHERE Город LIKE '$l%'")->fetchArray(SQLITE3_ASSOC);
echo "Word: $l <br>";
echo var_dump($k);

Answer 1

Как правильно заметил @Visman, fetchArray выбирает только одну строку. По ссылке http://php.net/manual/ru/sqlite3result.fetcharray.php в комментариях есть пример, как получить весь результат, применительно к Вашему случаю должно быть примерно так.

$word = "казан";
$e = mb_substr($word, mb_strlen($word)-1, 1);
$db = new \SQLite3(__DIR__ . '/citi_bot/citi.db');
$l = mb_strtoupper($e);
$result = $db->query("SELECT Город FROM Лист1 WHERE Город LIKE '$l%'");
$k=array();
while($res = $result->fetchArray(SQLITE3_ASSOC)){ 
          $k[] = $res['Город']; 
} 
echo "Word: $l <br>";
var_dump($k);
READ ALSO
php artisan migrate не выполняет миграцию laravel

php artisan migrate не выполняет миграцию laravel

Использую OpenServer HTTP: Apache-PHP-7-Nginx-119 PHP: PHP-7-x64 MySQL-5

345
Уведомление на Android

Уведомление на Android

У меня есть сайт с регистрацией и общим чатом(php,mysql), как мне сделать так , чтобы когда в чат кто то напишет, мне приходило уведомление на телефон...

300
php mysql изменение запроса

php mysql изменение запроса

Есть следующий запрос:

195
Вырезать все теги iframe и img

Вырезать все теги iframe и img

В данный момент получилось только находить теги img

261