2017-05-31 36 views
-1

功能我有这样的代码:如何运行具有内部循环在PHP

$stopwords = array("acara", "ada", "adalah"); 
foreach ($stopwords as &$word) { 
    $word = '/\b' . preg_quote($word, '/') . '\b/'; 
} 

$filter=preg_replace($stopwords, '', $case); 

$kata = str_word_count($filter,1); 
$jumlah = count($kata); 

function myfunction() { 
    for($i=0; $i<$jumlah; $i++){ 
     echo "$kata[$i]"; 
    } 
} 

myfunction(); 

当我运行我的代码,myfunction不显示输出数据。如何使用该功能获得输出?

+0

这肯定是最模糊的代码,我今天见过。你的预期产出是多少?你为什么通过引用传递'$ word'?什么是'$ case'? '$ stopwords'是一种模式?当所有变量超出范围时,你如何期望myfunction()有任何输出? –

+0

由于变量范围的限制,您的$ jumlah函数内部函数不同于$ jumlah。请阅读http://php.net/manual/en/language.variables.scope.php –

回答

2

你应该通过$卡塔和$ jumlah作为参数:

function myfunction($jumlah, $kata) { 
     for($i=0; $i<$jumlah; $i++) 
     { 
      echo $kata[$i]; 
     } 
} 


myfunction($jumlah, $kata);