<?php

$str = str_repeat('x', 65_540);
$str2 = 'y' . $str;

$sql = 'select
  json_arrayagg(v) agg
from
  (
    select ? v
    union all
    select ? v
  ) t';

$expectedRes = ['agg' => '["' . $str . '","' . $str2 . '"]'];

$mysqli = new \mysqli('localhost', 'atk4_test', 'XXXXX', 'atk4_test__data');

$stmt = $mysqli->prepare($sql);
$stmt->bind_param('ss', $str, $str2);
$stmt->execute();

$result = $stmt->get_result();
$row = $result->fetch_assoc();
var_dump($row);
var_dump($row === $expectedRes);

// reproduce the same with pdo_mysql driver

$pdo = new \PDO('mysql:host=127.0.0.1;dbname=atk4_test__data', 'atk4_test', 'XXXXX');

$stmt = $pdo->prepare($sql);
$stmt->bindValue(1, $str);
$stmt->bindValue(2, $str);
$stmt->execute();

$res = $stmt->fetch(\PDO::FETCH_ASSOC);
var_dump($row);
var_dump($row === $expectedRes);
