0

私はこのコードを持っています:

if(!strstr($value, '<p>')){...}

これは、 を含むフィールドを除いて、データベースから Excel ファイルにデータを出力します<p>

を含むフィールドも除外したい</script>

次の 2 つのコード スニペットを試してみましたが、成功しませんでした。

if((!strstr($value, '<p>')) and (!strstr($value, '</script>')))

と:

if(!strstr($value, '<p>', '</script>'))

基本的に私の質問は、Excel ファイルからと の両方<p>を除外するにはどうすればよいですか?</scrpit>

4

3 に答える 3

1

これには、通常の式とpreg_match関数を使用できます。

if(!preg_match("/(<p>|<\/script>)/", $value)) {
    // Do your magic!   
}

preg_matchの詳細については、PHP preg_matchを参照してください。 正規表現に問題がある場合は、次の例を確認してください。を試して、正規表現を入手してください。

そして、私が見る限り、あなたのロジックはうまく機能するはずです。$value変数が間違ったデータを保持している可能性があります。とにかく、あなたはあなたを動かすために何かを持っています。

お役に立てれば!

于 2012-11-08T19:49:21.783 に答える
0

これは機能します。

<?php

$a = array('ok0', 'somthing <p>','2222 </script>', 'ok1');
foreach ($a as $value)
    if((!strstr($value, '<p>')) && (!strstr($value, '</script>')))
        echo $value;
于 2012-11-08T19:51:31.423 に答える
-2

strpos代わりに使用することをお勧めしますが、これは正常に機能するはずです。

if(!strstr($value, '<p>') and !strstr($value, '</script>')){
    // Write your file
}

...そうでない場合は、別のことが起こっています。$valueたとえば、あなたはあなたが期待するものではないかもしれません。

編集&&は、操作andごとのコード例に置き換えられました

于 2012-11-08T19:50:14.750 に答える