関数から返された文字列を別の文字列に連結しようとしていますが、文字列の最後に連結するのではなく、関数の返す値を文字列の先頭に挿入しています。PHP - 最初はなぜ連結していますか?
ここことを行うコードの一部です:私の予想出力(真であることIF最初の場合)である
$dados = '';
if ($unidade == 'Goiânia') {
$dados = "58, 63, 66, 66, 81, 85, 86, 86, 89, 90, 90,";
} elseif ($unidade == 'Jataí') {
$dados = "11, 15, 18, 20, 21, 23, 23, 24, 24, 25, 25,";
} elseif ($unidade == 'Catalão') {
$dados = "9, 14, 16, 19, 24, 25, 25, 25, 25, 26, 26,";
} elseif ($unidade == 'Goiás') {
$dados = "1, 1, 1, 1, 3, 3, 3, 3, 5, 6, 7";
}
// Concatenating the string with the function
// the function returns a string.
$dados .= consultaSimplesRetornaString($sql);
echo $dados;
:
58, 63, 66, 66, 81, 85, 86, 86, 89, 90, 90,
私が実際に取得しています何が次のとおりです:
, 58, 63, 66, 66, 81, 85, 86, 86, 89, 90, 90,
この種の連結は関数では機能しませんPHPの変数で、私は別の方法でそれを行う必要があります。
ありがとうございます!
EDIT:要求されたよう
、ここでは関数consultaSimplesRetornaStringは(だ)と$ SQLパラメータ: (機能が正常に動作している、私は文書全体を通してそれを使用)。
function consultaSimplesRetornaString($sql)
{
// Connecting to te db
$conn = connect();
$result = $conn->query($sql);
if (!$result)
echo $conn->error;
$aux = 0;
while ($row = $result->fetch_assoc()) {
$array[$aux] = $row["count"];
$aux++;
}
$str = "";
foreach($array as $key => $value) {
$value = round($value, 2);
$str.= "$value ,";
}
$conn->close();
echo ($str);
}
そして、ここでは、$ SQLパラメータです:
$ anoSelecionadoPOSTと$ unidadeは、単純な変数であり、かつうまく働いています。
$sql = "SELECT COUNT(distinct curso) AS count FROM `$anoSelecionadoPOST` WHERE `ano_ingresso`= '$anoSelecionadoPOST' and `Regional` = '$unidade'";
ショー 'consultaSimplesRetornaStringを()'と '$のsql'の値を開始しているでしょうか? –
@MarcinOrlowski質問を編集しました。 –
以下の答えを見てください –