ホームページ > バックエンド開発 > PHPチュートリアル > データベースクエリ結果を使用して配列を初期化する

データベースクエリ結果を使用して配列を初期化する

WBOY
リリース: 2016-06-23 14:01:50
オリジナル
1050 人が閲覧しました

データベース php 配列

データベース クエリ コードは次のとおりです:
$query = mssql_query($sql_all);$array_pie=new array();while($row=mssql_fetch_array($query)){	//array_push($arry_pie, $var)//???}
ログイン後にコピー

$array_pie を初期化して次のような構造の配列を形成するには
var myData = new Array([1997, 7.80], [1998, 4.80], [1999, 6.50]); 
ログイン後にコピー

while でコードを記述する方法は?


ディスカッションへの返信(解決策)

あなたが望む結果は実際には2次元配列です

$query = mssql_query($sql_all);$array_pie=new array();$i = 0;while($row=mssql_fetch_array($query)){	array_pie[$i][] = $row;	$i++;}
ログイン後にコピー
ログイン後にコピー

var myData = new Array([1997, 7.80], [1998, 4.80], [1999, 6.50]);
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
のデータはそれぞれ
$row[1]、$row[2]に対応します

結果実際には 2 次元配列です

$query = mssql_query($sql_all);$array_pie=new array();$i = 0;while($row=mssql_fetch_array($query)){	array_pie[$i][] = $row;	$i++;}
ログイン後にコピー
ログイン後にコピー



1
var myData = new Array([1997, 7.80], [1998, 4.80], [1999, 6.50]);
内のデータはそれぞれに対応しますto
$row[1], $row[2]

var myData = new Array([1997, 7.80], [1998, 4.80], [1999, 6.50]);
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
のデータは
$row[1], $row[2] に対応します

$query = mssql_query($sql_all);$array_pie=new array();$i = 0;while($row=mssql_fetch_array($query)){	array_pie[$i][0] = $row[1];        array_pie[$i][1] = $row[2];	$i++;}
ログイン後にコピー
ログイン後にコピー

これを試してください

$query = mssql_query($sql_all);$array_pie = array();while($row=mssql_fetch_array($query)){  $array_pie[] = array($row[1]、$row[2]);}
ログイン後にコピー
ログイン後にコピー


var myData = <?php echo json($array_pie);?>;
ログイン後にコピー
ログイン後にコピー


データ

var myData = new Array([1997, 7.80], [1998, 4.80], [1999, 6.50]);
ログイン後にコピー
ログイン後にコピー
ログイン後にコピー
はそれぞれ
$row[1]、$row[2] に対応します

$query = mssql_query($sql_all);$array_pie=new array();$i = 0;while($row=mssql_fetch_array($query)){	array_pie[$i][0] = $row[1];        array_pie[$i][1] = $row[2];	$i++;}
ログイン後にコピー
ログイン後にコピー

これを試してください
この $array_pie を完全に出力してデータが正しいかどうかを確認する方法

while ループの外側 print_r($array_pie);

$query = mssql_query($sql_all);$array_pie = array();while($row=mssql_fetch_array($query)){  $array_pie[] = array($row[1]、$row[2]);}
ログイン後にコピー
ログイン後にコピー


var myData = <?php echo json($array_pie);?>;
ログイン後にコピー
ログイン後にコピー

$query1 = mssql_query($sql_all);$arry_pie = array();while($row1=mssql_fetch_array($query1)){	//echo $row;//array array	if($row1[2]!=0){	$row1['percent_d']=round($row1[2]/$s_ds*100,2).'%';	}else{		$row1['percent_d']=0;	}	if($row1[4]!=0){		$row1['percent_m']=round($row1[4]/$s_ms*100,2).'%';	}else{		$row1['percent_m']=0;	}	//$array_pie[$i][0]=$row[0];	//$arry_pie[$i][1]=$row[2];	$arry_pie=array($row1[0],$row1[1]);	//$i++;	array_push($items, $row1);}	echo json($arry_pie);
ログイン後にコピー

baoc
重大なエラー: C:PHPAPMServ5.2.6wwwhtdocsxjjxV2get_brands.php の 47 行目で未定義関数 json() を呼び出します

手動エラー
json は json_en である必要がありますコード

手動エラー
json は次のようになりますjson_encode になります
出力にデータが 1 つしかないのはなぜですか...

$arry_pie = array();$query = mssql_query($sql_all);while($row=mssql_fetch_array($query)){	$s_dq=$s_dq+$row[1];	$s_ds=$s_ds+$row[2];	$s_mq=$s_mq+$row[3];	$s_ms=$s_ms+$row[4];	$arry_pie=array($row[0],$row[1]);	}echo json_encode($arry_pie)."<br>";
ログイン後にコピー

$arry_pie = array($row[0],$row[1]);
$arry_pie[] = array( $row[0],$row[1]);

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート