0

こういうのを再現したい…

var CA, AZ, TN = 'user1';

返品で...

<?php 
$phpstring = $wpdb->get_row("SELECT value FROM user_data WHERE user_id = 5");
?>    
var state_phpstring = <?php echo $phpstring ?>; 

そして、私が書き込んだ場合と同様に、「user1」文字列をそれぞれ (CA、AZ、および TN) に追加します。

これに似たコードを書くだけで、ループを作成せずにこれを行う方法はありますか...

var <?php echo $phpstring ?> = 'user1';
4

2 に答える 2

1

いくつかのチェックを行った変数...

<?php 
$phpstring = $wpdb->get_row("SELECT value FROM user_data WHERE user_id = 5");
?>    
var state_phpstring = <?php echo (is_array($phpstring)) ? implode(',',$phpstring):'null'; ?>; 

編集:この変数は、サンプルコードの行で使用できます

var <?php echo $phpstring ?> = 'user1';

しかし、db から取得した各レコードは同じプロパティに割り当てられます。これは、すべてのプロパティ データを mysql に保存し、それらも取得して後で割り当てる方がよいという意味ではありません...ところで、今、あなたが伝えた後あなたが達成したい主な目標を教えてください。

メイン変数 (ここではサンプルの個人) のさまざまなプロパティを格納するには、配列を使用することをお勧めします。このような;

user1 = new Array();
user1["state"] = "CA";
user1["country"] = "USA";
//and so on...

上記のサンプル php をこの使用法で使用するには、次のような方法を試すことができます。

<?php 
$phpstring = $wpdb->get_row("SELECT username,user_state,property2,property3 FROM user_data WHERE user_id = 5");
// make sure $phpstring is an array and has item in it here
// you can also assign more than one person data with foreach usage
foreach($phpstring as $individuals){
    echo $individuals["username"]." = new Array();";
    echo $individuals["username"].'["state"] = "'.$individuals["user_state"].'";';
    echo $individuals["username"].'["property2"] = "'.$individuals["property2"].'";';
    echo $individuals["property2"].'["property3"] = "'.$individuals["property2"].'";';
}
?>

これは単なるサンプルであり、phpstring がどのように返されるか (連想かどうかなど) がわからないことに注意してください。

最後の注意として; 実際、変数を実世界のオブジェクト (たとえば人) として扱うオブジェクト指向プログラミングを使用するのが最善のアプローチですが、これには OOP のロジックと使用法を理解する必要があるため、短期的には配列の方が簡単に実行できます。

于 2012-11-20T01:07:31.583 に答える
0
var <?php echo implode( ', ', array( 'CA', 'AZ', 'TN')); ?> = 'user1';

それがJSで望ましい結果をもたらすかどうかはわかりませんが。ただし、探している出力が生成されます。

var CA, AZ, TN = 'user1';
于 2012-11-20T01:02:50.400 に答える