C'est étonnant que tu ais ce message d'erreur sur le array_multisort() et pas sur le array_column() alors que c'est le même tableau qui passé en paramètre... Mais c'est peut être parce que c'est un sous-tableau que le multisort() ne fonctionne pas et génère une erreur.
En fait, quand tu décodes ton flux json, le fait de passer le second paramètre à true, a pour effet de le transformer l'objet json reçu en tableau associatif qui est affecté à ta variable $parsedAPI. Tu peux faire un var_dump ou un print_r($parsedAPI) pour le constater.
Tu verras également la structure de ton tableau et les indexes utilisés. D'après le code que tu as donné, tu devrais trouver un index nommé 'tableau', sous lequel il y a une liste de tableaux (sur laquelle tu fais le foreach pour les parcourir un par un), et dans chacun de ces tableaux tu vas retrouver un index 'data1' avec la valeur correspondante, un index 'data2' avec sa valeur, etc.
L'objectif de array_column() ici est de te récupérer la liste des valeurs de chaque "data1" présents dans ton tableau afin de pouvoir les utiliser pour trier tout le tableau
Essaies de sortir le tableau dans une variable avant de le trier et dis nous si tu as toujours l'erreur (et si ça répond à ton besoin

)
$parsedAPI = json_decode($api, true);
$table = $parsedAPI['tableau'];
$keys = array_column($table, 'data1');
array_multisort($keys, SORT_ASC, $table);
foreach ($table as $datas) {
...
C'est étonnant que tu ais ce message d'erreur sur le array_multisort() et pas sur le array_column() alors que c'est le même tableau qui passé en paramètre... Mais c'est peut être parce que c'est un sous-tableau que le multisort() ne fonctionne pas et génère une erreur.
En fait, quand tu décodes ton flux json, le fait de passer le second paramètre à true, a pour effet de le transformer l'objet json reçu en tableau associatif qui est affecté à ta variable $parsedAPI. Tu peux faire un var_dump ou un print_r($parsedAPI) pour le constater.
Tu verras également la structure de ton tableau et les indexes utilisés. D'après le code que tu as donné, tu devrais trouver un index nommé 'tableau', sous lequel il y a une liste de tableaux (sur laquelle tu fais le foreach pour les parcourir un par un), et dans chacun de ces tableaux tu vas retrouver un index 'data1' avec la valeur correspondante, un index 'data2' avec sa valeur, etc.
L'objectif de array_column() ici est de te récupérer la liste des valeurs de chaque "data1" présents dans ton tableau afin de pouvoir les utiliser pour trier tout le tableau :)
Essaies de sortir le tableau dans une variable avant de le trier et dis nous si tu as toujours l'erreur (et si ça répond à ton besoin ;))
[php]$parsedAPI = json_decode($api, true);
$table = $parsedAPI['tableau'];
$keys = array_column($table, 'data1');
array_multisort($keys, SORT_ASC, $table);
foreach ($table as $datas) {
...[/php]