0

ある種の問題があり、それを解決する方法がわかりません。

問題は、別のデータベースに 500 個のレジスタがあり、それらを取得するためのクエリにはそれらがすべて含まれていることですが、データベースにそれらを挿入/更新するサイクルを実行すると、foreach サイクルが最後に到達せず、終了しません。エラーは表示されません。

サイクルは次のとおりです。

foreach ($this->getMetaEmpregado()->getAll()->result_array() as $modelData) {
        $oEmpregado = $this->getEmpregadoObject($modelData);

        $arrayEmpWhere = array(
            'idempregado' => $oEmpregado->getIdEmpregado(),
            'idsociedade' => $oEmpregado->getIdSociedade(),
            'nif' => $oEmpregado->getNif()
        );

        if ($this->getWayUtilizador()->get($arrayEmpWhere)->num_rows() == 0) {
            $countInsert++;
            $this->insertNewEmp($oEmpregado);
        } else {
            $countUpdate++;
            $this->UpdateEmp($oEmpregado);
        }
    }

echo "Total Updates: $countUpdate Total Inserts: $countInsert<br>"; 

260レジスタ付近で停止するため、最終的にエコーをシューッということはありませんが、100レジスタに達しない300レジスタに到達することもあります。

よろしく、
エルカス

4

1 に答える 1

1

のようですscriptが、 php.initaking too longに を入れる必要がincreaseありMax_Execution_Timeます。

次のように、 ini_set メソッドを使用して変更できます。

ini_set('max_execution_time', 600); //600 seconds = 10 minutes

お役に立てれば。

于 2012-06-20T12:47:12.513 に答える