0

誰かが私がこのコードを修正するのを手伝ってもらえますか?奇妙なエラーが発生しています:このforループが正しく機能していません

<?php 
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{
echo $languages;} 
?>

期待される結果:

te,hi

実結果:

Array Array
4

7 に答える 7

2

最初に反復の配列エントリを取得する必要があります($languages[$langIndex]):

for($langIndex=0;$langIndex<count($languages);$langIndex++) {
  $language = $languages[$langIndex];
  echo $language;
} 

もう1つの可能性は、foreachループを使用することです。

foreach($languages as $langIndex => $language) {
  echo $language;
} 
于 2012-07-28T08:37:00.800 に答える
0

$languagesループの周りで毎回配列全体を出力しようとしています。ループ内には、実際に値$langIndexが何であるかを確認するものはありません。現在見ているインデックスの文字列を印刷することができます。

echo $languages[$langIndex];

foreachまたは、トラブルを回避して、代わりにループを使用することもできます。

foreach ($languages as $lang) {
    echo $lang;
}
于 2012-07-28T08:37:01.413 に答える
0

配列の要素にアドレス指定するときは、配列インデックスを使用する必要があります

<?php 
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{ 
    echo $languages[$langIndex];
} 
?>
于 2012-07-28T08:38:26.213 に答える
0

誤って使用しますecho array。これを試して:

<?php 
$languages=array('te','hi');
for($langIndex=0;$langIndex<count($languages);$langIndex++)
{
    echo $languages[$langIndex];
} 
?>
于 2012-07-28T08:38:51.000 に答える
0

ループ内で毎回配列($ languages)を呼び出します...

で試してみてください:

for($langIndex=0;$langIndex<count($languages);$langIndex++)
    echo languages[$langIndex];
}

また

foreach($languages as $langue){
    echo $langue;
}
于 2012-07-28T08:39:11.663 に答える
0

te,hiその配列から目的の結果だけが必要な場合は、

echo  implode(',', $languages);
于 2012-07-28T08:41:40.583 に答える
0

そしてperformacneの理由で!

<?php 
$languages=array('te','hi');
for($langIndex = 0, $count = count($languages) ;$langIndex < $count; $langIndex++)
{
    echo $languages[$langIndex];
} 
?>
于 2012-07-28T08:53:54.373 に答える