@givi_m
Начинающий девелопер

Как правильно выводить информацию из масива?

Всем привет.
Заранее прошу прощения за глупые вопросы, изучаю php я четвертый день.) Пытаюсь получить Telegram id всех посетителей бота.. вот что получилось
ini_set('error_reporting', E_ALL);
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);

$bd = new PDO('mysql:dbname=testbd;host=localhost', 'testbduser', 'G9yR37', array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8"));

function user() {
  global $bd;
  $stmt = $bd->query("SELECT `tg_id` FROM `user`");
  $data = $stmt->fetchAll();
  return $data;
 }
$datas = user();

foreach ($datas as $value) {
echo "<b>$value</b><br>";
}

//$message = "Test rassilki";
//sendTg($message);  
	
//    function sendTg($message){
//        $tokken = "111081012:AAF5DzPQ4bjxO94BWvGM_JDiey_fqgiKE"; // токен бота
//		$filename = "https://api.telegram.org/bot".$tokken."/sendMessage?chat_id=".$value."&text=".urlencode($message)."&parse_mode=html";
//		file_get_contents($filename);
//    }
?>

Выдает ошибку
Notice: Array to string conversion in /var/www/www-root/data/www/domain.com/1.php on line 19
Array

Через print_r массив выводит на экран. Все ли я делаю так?
  • Вопрос задан
  • 97 просмотров
Решения вопроса 2
FanatPHP
@FanatPHP
Чебуратор тега РНР
В данном конкретном случае
$data = $stmt->fetchAll(PDO::FETCH_COLUMN);
но на будущее попробуй понять, что такое вложенные массивы.
в частности сравни вывод print_r двух массивов
Ответ написан
myks92
@myks92 Куратор тега PHP
Нашёл решение — пометь вопрос ответом!
foreach ($datas as $value) {
   echo $value['tg_id'];
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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