こんにちは。
現在PHPにてMYSQLに格納されている以下の様なデータを
取得し、先頭の数値で配列の昇順ソートしようとしているのですが上手くいきません。
クエリ結果(SELECT DISTINCT size_name FROM m_item ORDER BY size_name DESC)のデータ
5x15
5x16
6.5x15
6.5x16
6x14
6x15
6x16
7.5x16
7.5x17
7.5x18
7x15
7x16
7x17
7x18
8.5x18
8.5x19
8.5x20
8.5x21
8x17
8x18
8x19
8x20
9.5x18
9.5x19
9.5x20
Object:object(PDOStatement)#41 (1) { ["queryString"]=> string(61) "SELECT DISTINCT size_name FROM m_item ORDER BY size_name DESC" }
ソース一部抜粋
PHP
1 //PDOにてQueryを発行するメソッド 2 public function SizeSelect() { 3 $sql = ""; 4 try { 5 $sql = "SELECT DISTINCT size_name FROM m_item ORDER BY size_name DESC"; 6 $pdo = new PDO(DB_HOST,DB_USER,DB_PASSWORD); 7 8 $sth = $pdo->prepare($sql); 9 $sth->execute(); 10 $pdo = null; 11 12 return $sth; 13 14 } catch (PDOException $e) { 15 print_r($e->getMessage()); 16 } 17 } 18コード
PHP
1 2 //上記のメソッドを呼び出しforeachで取得したObjectを回しデータを表示するロジック 3 public function SizeShow() { 4 include_once("./module/db.php"); 5 $db = new Db(); 6 $Size = $db->SizeSelect(); 7 8 // var_dump($Size); 9 10 foreach($Size as $row) { 11 if($row[0] != "") { 12 echo("<option value='".$row[0]."'>".$row[0]."</option>"); 13 } 14 } 15 } 16コード
やはり一度分解して
先頭の数値を抜き出して、ソートするのが無難でしょうか?
皆様のお知恵をお貸し下さい。
宜しくお願い致します。