но почему то под нулевым индексом что то есть
Если delimiter не содержится в string, и используется отрицательный limit, то будет возвращен пустой массив (array), иначе будет возвращен массив, содержащий string.
define('NAMES_COUNT',5);
$firstnameCount = count($firstname);
$lastnameCount = count($lastname);
$str=null;
for ($i=1; $i<=NAMES_COUNT; $i++) {
$randomFirstname = $firstname[rand(0,$firstnameCount-1)];
$randomLastname = $lastname[rand(0,$lastnameCount-1)];
$str .= (is_null($str) ? '' : ', ') . "${randomFirstname} ${randomLastname}";
}
$str .= '. ';
WITH RECURSIVE temp1 ( "id","parent_col","description" ) AS (
SELECT T1."id",T1."parent_col", T1."description"
FROM my_table T1 WHERE T1."id" = 47
UNION ALL
SELECT T2."id", T2."parent_col", T2."description"
FROM my_table T2 INNER JOIN temp1 ON( temp1."id"= T2."parent_col")
)
SELECT * FROM temp1 LIMIT 100