0

私が信じているほど単純ではありませんが、次のものがあり、提供された日付から月の名前を印刷しようとしています。

public function convertEngDateToAr($engDate)
    {
        //SELECT MONTHNAME('2009-05-18');
        $connectionInstance = new ConnectionClass();
        $connection = $connectionInstance->connectToDatabase();
        $monthResult = $connection->query("SELECT MONTHNAME('$engDate')");
        //echo "Month: " . $monthResult;
        while($row = $monthResult->fetch_assoc())
        {
            print_r($row);
        }

    }

上記により、次の出力が得られます。

配列 ( [MONTHNAME('2012-08-21')] => August )

8月だけを配列から取り出して変数に格納するにはどうすればよいですか? ここで唯一奇妙な点は、配列内のインデックスが奇妙であることです。

感謝

4

2 に答える 2

3

に変更SELECT MONTHNAME('$engDate')"してみてくださいSELECT MONTHNAME('$engDate') as monthName"

次に、次のように表示されます。

Array ( monthName => August )

次に、次を使用できます。

    while($row = $monthResult->fetch_assoc())
    {
        $myMonth=$row['monthName'];
    }
于 2012-08-09T11:20:44.873 に答える
1

SELECT MONTHNAME(xxxx) AS monthName連想配列の代わりにインデックス付き配列を使用するか、返すことができます。

while($row = $monthResult->fetch_row())
  echo $row[0] . "\n";
于 2012-08-09T11:24:19.767 に答える