1

したがって、.csv ファイルを読み取り、正規表現で名前: xxxxx を検索し、正規表現の結果を txt ファイルに追加するスクリプトを作成する必要があります。

私のPHPスクリプト:

<?PHP
$array=array();
$file_handle = fopen("CONTACTOS.CSV", "r");
$fp=fopen("teste.txt", "w");
$pattern = '/Nome.+\s+/';
while (!feof($file_handle) ) {
    $i=0;
    $line_of_text = fgetcsv($file_handle, 1024);
    $iend=count($line_of_text);
            while($i<=$iend){
                    if (isset($line_of_text[$i])){
                            //$array[]=$line_of_text[$i];
                            array_push($array, $line_of_text[$i]);
                            //fputs($fp, $line_of_text[$i]);
                            //echo($array[$i] . "\n");
                            $i++;
                    }
                    else{
                            $i++;
                        }
            }
}
//print_r($array);
$fl_array = preg_grep("/Nome.+\s+/", $array);
print_r($fl_array);
// ________________________________________
$e=1;
end($fl_array);
$flend=key($fl_array);
reset($fl_array);
$arrayF = array_values($fl_array);
while($e<=$flend){
    if (array_key_exists($e, $arrayF) == true) { 
            //print_r($e . "\n");
            puts($fp, $arrayF[$e]);
            $e++;
        }
    else{
        $e++;
        }
    }
// ________________________________________
//print_r($fl_array);
$fp = fopen('CONTACTOS_NOVO.csv', 'w');
       //fputcsv($fp, $array);
fclose($fp);
fclose($file_handle);

?>

CSV ファイルの一部:

De: bpsnun@m2g-24-59.spvservers.net [mailto:bpsnun@m2g-24-59.spvservers.net] Em nome de Site - BPS Finance
Enviada: quinta-feira, 18 de Março de 2010 10:57
Para: form@bpsfinance.com
Assunto: Formulário - BPS Finance



Formulário nº: 002136

Data: 18/03/2010 - 11:47:58

Faça JÁ o seu Pedido



Montante Pretendido   



Montante de Crédito Pretendido*:   4000 €

1.  O Preenchimento desta proposta não obriga o cliente à sua aceitação.
2.  Caso algum dos proponentes e/ou seus cônjuges tiverem Incidentes Bancários, a proposta será imediatamente RECUSADA.
3.  Não existem quaisquer custos associados à emissão da Pré-Aprovação.
4.  PRAZO: De 12 a 96 meses. Apresentaremos todas as prestações possíveis para o seu crédito. E você Escolhe!

1º Titular   



Nome*:   MARIA JOAO MOTA

$fp .txt ファイルに保存したいのは、Nome*: XXXX XXXXXXX XXXX

私のコードの問題は何ですか? このコードで発生するエラーは次のとおりです。

Fatal Error: Call to undefined function puts() in C:\XXX\teste.php on line 35

機能するようにコードを作り直すのを手伝ってもらえますか?

アップデート! 今はエラーはありませんが、preg_grep は着用されていません。私の txt には nome だけでなく、.csv ファイルと同じ内容があります*: preg_grep を機能させるにはどうすればよいですか?

4

1 に答える 1

1

while($e<=$flend){
    if (array_key_exists($e, $arrayF) == true) { 

から始まる配列キーをチェックしています$e=1;が、見つかったNome行はに格納されてい$arrayF[0]ます。

于 2014-07-04T13:54:08.523 に答える