Php 爆炸后制作阵列

Php 爆炸后制作阵列,php,arrays,explode,Php,Arrays,Explode,我想从输入字符串创建一个数组。在此代码之前,我尝试过分解,但数组的长度仍然为1。我尝试的每个字符串仍然是数组[0]中的一个字符串。以下是我目前的代码: public function word() { $kata = array($this->kal->getHasil()); if (!empty($kata)) { $n = count($kata) for ($i = 0; $i < $n; $i++) {

我想从输入字符串创建一个数组。在此代码之前,我尝试过分解,但数组的长度仍然为1。我尝试的每个字符串仍然是数组[0]中的一个字符串。以下是我目前的代码:

public function word()
{
    $kata = array($this->kal->getHasil());
    if (!empty($kata)) {

        $n = count($kata)

        for ($i = 0; $i < $n; $i++) {
            $imin = $i;
            for ($j = $i; $j < $n; $j++) {
                if ($kata[$j] < $kata[$imin]) {
                    $imin = $j;
                }
            }
            $temp = $kata[$i];
            $kata[$i] = $kata[$imin];
            $kata[$imin] = $temp;
        }

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

public function tokenize()
{
    $temp = $this->kal->getHasil();
    $token = explode(" ", $temp);
    return $token;
}

$hasil = $pp->tokenize();
for ($i = 0; $i < sizeof($hasil); $i++) {
    $st = new stemming();
    $hasil[$i] = $pp->singkatan($hasil[$i]);
    $hasil[$i] = $st->stem($hasil[$i]);
    $hasil[$i] = $pp->stopWord($hasil[$i]);
    //echo "$hasil[$i] ";

    $hb = new hitungBobot($hasil[$i]);
    $hb->word();
}
公共虚词()
{
$kata=array($this->kal->getHasil());
如果(!空($kata)){
$n=计数($kata)
对于($i=0;$i<$n;$i++){
$imin=$i;
对于($j=$i;$j<$n;$j++){
如果($kata[$j]<$kata[$imin]){
$imin=$j;
}
}
$temp=$kata[$i];
$kata[$i]=$kata[$imin];
$kata[$imin]=$temp;
}
对于($i=0;$i<$n;$i++){
回声“$kata[$i]”;
}
}
}
公共函数标记化()
{
$temp=$this->kal->getHasil();
$token=explode(“,$temp”);
返回$token;
}
$hasil=$pp->tokenize();
对于($i=0;$isingkatan($hasil[$i]);
$hasil[$i]=$st->stem($hasil[$i]);
$hasil[$i]=$pp->stopWord($hasil[$i]);
//回声“$hasil[$i]”;
$hb=新的hitungBobot($hasil[$i]);
$hb->word();
}

如何修复此问题?

您可以使用globar变量,请参见代码:

    public function word(){ $kata = array($this->kal->getHasil());

       global $output;

        if(!empty($kata)){

                $ar= count($kata)
                $output += $ar;
            }

     public function tokenize() {
        $temp = $this->kal->getHasil();
        $token = explode(" ",$temp);
        return $token;
    }

    $output = 0;

    $hasil = $pp->tokenize();
                for($i=0; $i<sizeof($hasil); $i++) { 
                    $st = new stemming();
                    $hasil[$i] = $pp->singkatan($hasil[$i]);
                    $hasil[$i] = $st->stem($hasil[$i]);
                    $hasil[$i] = $pp->stopWord($hasil[$i]);
                    //echo "$hasil[$i] ";

                    $hb = new hitungBobot($hasil[$i]);  
                    $hb->word();
                }

echo $output;
public function word(){$kata=array($this->kal->getHasil());
全球美元产出;
如果(!空($kata)){
$ar=计数($kata)
$output+=$ar;
}
公共函数标记化(){
$temp=$this->kal->getHasil();
$token=explode(“,$temp”);
返回$token;
}
$output=0;
$hasil=$pp->tokenize();
对于($i=0;$isingkatan($hasil[$i]);
$hasil[$i]=$st->stem($hasil[$i]);
$hasil[$i]=$pp->stopWord($hasil[$i]);
//回声“$hasil[$i]”;
$hb=新的hitungBobot($hasil[$i]);
$hb->word();
}
echo$输出;

您的问题不清楚,$kata的值是多少?使用print\r($kata)编辑如果您显示输入和所需输出,您的问题可能很容易回答,但当前的形式不清楚。例如,如果我像这样输入“我吃比萨饼”,输出应该是3。但是,该代码的结果是111。$kata是为了用更多的代码获得输入AdrianCidAlmaguer MarkMedit的值,分解在哪里?但是如果我使用$output的值作为循环约束,它不起作用@AdrianCidAlmague@Jessica为什么循环和在哪里?在虚词()中.我有代码在count$output之后进行排序。