2012-04-07 18 views
3

文字列の配列を返そうとしています。 、私は私の配列を返すとき、基本的にphp配列のechoを文字列として返す方法

$errors[] = "error goes here!"; 

:最後に機能して

$errors[] = toolbarCheckCreds($_COOKIE['uname'], $_COOKIE['pword'], $_COOKIE['rememberMe']); 
    echo $errors[0]; 

と、この:私はこれを行う

return $errors; 

と私はこのようなエラーを設定しますそれをエコーすると、次の出力が得られます。

Array 

答えて

3

PHP implodeを使用して、配列をエコー可能な文字列に変換します。配列のエコーを使用すると、データ型が表示されます。

return implode(' :: ', $errors); 

は、例えば、あなたのエラーの配列は、3つの値が含まれている場合:

return implode(' ', $errors); 

あなただけの最初のパラメータでスペースを置き換える、スペース以外の区切り文字でエラーを分離したい場合は

その後、
[ "Invalid data" , "404" , "Syntax error" ] 

あなたの文字列を、あなたは::を使用した場合、あなたはその結果にechoを実行すると、次のようになります。

Invalid data :: 404 :: Syntax error 

参考リンクを参照してください。別の例が含まれています。

+0

2番目の例で提供したように、「::」を追加するために現在のコードを変更するにはどうすればよいですか? – droidus

+0

@droidus - 私は自分の答えを更新しました。 – jmort253

4

あなたの配列をループする必要があります。私の個人的な好みがforeachループを使用しているので、これを行うには複数の方法があります。

例えば、これは新しい行に、アレイ内の各エラーメッセージをエコーし​​ます:-があるとして、あなたは、配列の内容をエコーすることはできません

foreach ($errors as $error) 
{ 
    echo "<br />Error: " . $error; 
} 
+1

ここでの利点は、エラーオブジェクトが依然として配列であることです。 +1 – jmort253

0

アレイの内容を確認する場合は、returnパラメータをTrueに設定して、print_r()またはvar_export()を使用できます。

関連する問題