2011-12-17 5 views
-1

誰も私が配列の中に何が見えないのか説明できますか?私はそれが複数の番号(サブスクリプション)を持つことができると思われるので多分私は問題を抱えているのですか?ここにコードがあります。配列内のすべてをプリントアウト

$num = $_SESSION['subscription_ids']; 
if(is_array($num)) 
    { 
print_r($num); 
    } 
    else 
    { 
echo "not an array"; 
    } 

//Thanks DonnieM, yet It's spliting out "Array () " no joke. 

何が起こっているのですか?

+0

代わりに何をしますか? 'print_r'は何かを出力しなければなりません。 – deceze

+0

var_dump($ _ SESSION ['subscription_ids'])の出力は何ですか? –

+0

for print_r array()とvar dump statesがNULL – Matt

答えて

2

あなたの混乱は明らかにis_array1の出力から発生します。
is_arrayは、ブール値(trueまたはfalse)を返します。 のブール値をテキストとして出力する場合、trueは、何もない(空の文字列)として1falseと表されます。

したがって1は、ちょうどを意味します。はい、これは配列です。配列内にいくつの要素があるかは分かりません。

+0

count()を使用して配列内の要素の数を決定します。 –

1

これはどういう意味ですか?

php > $a = array(); 
php > echo is_array($a); 
1 
php > print_r($a); 
/* this is not empty, but an empty array */ 
Array 
(
) 
/* as long $a is initiate, it WILL NEVER return NULL */ 
php > var_dump($a); 
array(0) { 
} 

/* but */ 
php > $a = array(null); 
php > var_dump($a); 
array(1) { 
    [0]=> 
    NULL 
} 
0

$ _SESSION ['subscription_ids']の値が何であるか分かりません。 is_array関数を間違って使用しています。これはブール値を返し、代わりに変数に代入するだけです。

$num = $_SESSION['subscription_ids']; 
if(is_array($num)) 
{ 
    print_r($num); 
} 
else 
{ 
    echo "not an array"; 
} 

・ホープ、このことができます:

http://php.net/manual/en/function.is-array.php

は、私はこのようなコードは構造言う:ここでのドキュメントへのリンクです!

+0

私はあなたのコードを使用していますarray() – Matt

+0

foreach($ num as $ element){echo $ element;} – dmarges

関連する問題