Om jag förstår din fråga rätt, ajreal har redan erbjudit en lösning på denna StackOverflow-fråga . Citerat:
Detta ger dig storleken på din fråga i byte, dividera med 1024 för kilobyte och igen för megabyte.
Redigera: Om du drar tillbaka hela resultatet till PHP ändå och vill veta storleken på det, kan du beräkna det i PHP med något så här:
<?php
$data = [
[
'item' => 'Apple',
'type' => 'fruit',
'in_stock' => true
],
[
'item' => 'Biscuits',
'type' => 'confectionery',
'in_stock' => false
],
[
'item' => 'Milk',
'type' => 'dairy',
'in_stock' => true
],
];
function get_array_size(&$array)
{
$size = 0;
foreach ($array as $key => $value) {
if (is_array($value)) {
$size += get_array_size($value);
} else if (is_string($value)) {
$size += strlen($value);
} else if (is_bool($value)) {
$size += 1;
} /* else if ( some other type ) {
} */
}
return $size;
}
echo get_array_size($data); // Outputs 43
Detta kan eller kanske inte är acceptabelt för dig beroende på ditt användningsfall. Om du funderar på att mäta de fysiska byten på tråden kommer detta förmodligen inte att vara tillräckligt exakt.