誰かが私がこのコードを修正するのを手伝ってもらえますか?奇妙なエラーが発生しています:このforループが正しく機能していません
<?php
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{
echo $languages;}
?>
期待される結果:
te,hi
実結果:
Array Array
誰かが私がこのコードを修正するのを手伝ってもらえますか?奇妙なエラーが発生しています:このforループが正しく機能していません
<?php
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{
echo $languages;}
?>
期待される結果:
te,hi
実結果:
Array Array
最初に反復の配列エントリを取得する必要があります($languages[$langIndex]
):
for($langIndex=0;$langIndex<count($languages);$langIndex++) {
$language = $languages[$langIndex];
echo $language;
}
もう1つの可能性は、foreachループを使用することです。
foreach($languages as $langIndex => $language) {
echo $language;
}
$languages
ループの周りで毎回配列全体を出力しようとしています。ループ内には、実際に値$langIndex
が何であるかを確認するものはありません。現在見ているインデックスの文字列を印刷することができます。
echo $languages[$langIndex];
foreach
または、トラブルを回避して、代わりにループを使用することもできます。
foreach ($languages as $lang) {
echo $lang;
}
配列の要素にアドレス指定するときは、配列インデックスを使用する必要があります
<?php
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{
echo $languages[$langIndex];
}
?>
誤って使用しますecho array
。これを試して:
<?php
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{
echo $languages[$langIndex];
}
?>
ループ内で毎回配列($ languages)を呼び出します...
で試してみてください:
for($langIndex=0;$langIndex<count($languages);$langIndex++)
echo languages[$langIndex];
}
また
foreach($languages as $langue){
echo $langue;
}
te,hi
その配列から目的の結果だけが必要な場合は、
echo implode(',', $languages);
そしてperformacneの理由で!
<?php
$languages=array('te','hi');
for($langIndex = 0, $count = count($languages) ;$langIndex < $count; $langIndex++)
{
echo $languages[$langIndex];
}
?>