0

ここでの私の目標は、変数を mysql クエリのフィールド名に設定することです。以下の擬似コード

1.    $query = "SELECT firstName, lastName FROM users WHERE userName = 'mhopkins321';"
2.    $result = mysql_query($result);
3.    $while($row = mysql_fetch_assoc($result)){
4.         $column1 = name_of_column($row['firstName']);
5.    }
6.    echo $column1

      //Would return the string

      firstName

明らかに4行目は本当の疑似部分です

4

3 に答える 3

1

これはあなたが求めているものですか?

$query = "SELECT firstName, lastName FROM users WHERE userName = 'mhopkins321';"
$result = mysql_query($result);

$all_results = array();
$while($row = mysql_fetch_assoc($result)) {
     $formatted_row = array();
     foreach ( $row as $column => $value ) {
         $formatted_row[] = array($column, $value);
     }
     $all_results[] = $formatted_row;
}

または、ループ内$column$valueどのように使用するかを選択します。foreach

または、でアクセスできる最初の列が特に必要ですreset($row); $first_key = key($row);か?

于 2013-01-11T18:46:08.843 に答える
1

これは冗長に聞こえますが、いつでもarray_searchを使用できます。

while($row = mysql_fetch_assoc($result)){
    $value = $row['firstName'];
    $key = array_search($value, $row);
}

array_searchの詳細を参照してください。

于 2013-01-11T18:27:10.257 に答える
1

列の名前で変数に名前を付けたいですか?

$$row['firstName'] = $row['firstName'];

別の方法は次のとおりです。

    $query = "SELECT firstName, lastName FROM users WHERE userName = 'mhopkins321'";
    $result = mysql_query($result);
    $row = mysql_fetch_assoc($result);

    foreach($r as $key=>$value){
        $$key = $value;
    }

これで、列名で値をエコーアウトできます。

于 2013-01-11T18:10:57.473 に答える