2017-04-16 4 views
0

PHP 7では、ループを使用して配列として定義defineを構築することは可能ですか?php7はループを使って 'define'メソッドを構築します。出来ますか?

例:define("CUSTOMER", ["name1", "name2", "name3", "name4"]);

私のような何かを試してみたい:私はこの作品を作ってみましたが、ロジックの権利を取得するように見えることはできません

//FROM EXTERNAL USER CLASS: $user = new $User;

$sql="SELECT * FROM table"; 

$results = $user->db->query($sql); 
$i = 1; 
while($row = $results->fetch_assoc()){ 
    define("CUSTOMER", [ 
     $i => $row['first_name'].' '.$row['last_name'], 
    ]); 
$i++; 
} 

。 DBに複数のエントリがありますが、ループから1つの結果しか得られません。

var_dump($ rows);クエリが問題ないことを明らかにしますが、問題はdefine配列の構築内で反復であるようです。

アイデア?

+0

おそらく誰かがこの質問が投票される理由をより詳しく説明することができます。私は、私がフィドルを提供していなかったこと、そして私の論理は、PHP内での私のアプローチの点では、初心者であったことを理解しています。無知は、このマシンの背後にあるすべての原動力の後に 'stackoverflow'として知られています... –

答えて

2

このように使用します。定義するarrayを作成した後、定数を定義するために使用します。コード内の問題は、複数の行がある場合に発生します。

<?php 

ini_set('display_errors', 1); 
$sql = "SELECT * FROM table"; 

$results = $user->db->query($sql); 
$constantArray=array(); 
while ($row = $results->fetch_assoc()) 
{ 
    $constantArray[]=$row['first_name'] . ' ' . $row['last_name']; 
} 

define("CUSTOMER", $constantArray); 
+0

ありがとう。これは今うまくいきます。 –

+0

@dalelandryようこそ。:) –

関連する問題