
Вот что я сейчас пробую
В PHP я запускаю следующий скрипт:
exec('/home/user1/createinstanceinfolder.sh', $output, $return_var);
print_r($output);
Что вызывает следующий скрипт Bash:
declare -A arr == $(sudo mysql -u root -h localhost -e "USE mydb;SELECT * FROM users")
for i in "${arr[@]}"
do
echo "$i"
done
PHP печатает пустой массив, что здесь не так?
решение1
Я финансирую правильный синтаксис:
#!/bin/bash
set -f # disable globbing
IFS=$'\n' # set field separator to NL (only)
arr=($(sudo mysql -u root -h localhost -e "USE mydb;SELECT * FROM users"))
for i in "${arr[@]}"
do
echo "$i"
done