0

次のコードに簡単な問題があります。

<?php

$data = file_get_contents('aims_small.html');

$pattern_2 = '/<DIV STYLE=".*?top:(144px|[1-5][0-9][0-9]px).*?left:(7[6-9]px|8[0-4]px).*?width:(52px|[5-8][0-9]px).*?>(.*?)<\/DIV>/';


        $tag = "pattern_2";

        preg_match_all($$tag,$data,$matches);

        $var = $matches[0][2];

        echo 'show content of $var'.$var;

        var_dump($var);

        if($var == "OFF")
        {
        echo "true";
        }
        else
        {
        echo "false";
        }   

?>

$matches[0][2] は、preg_match_all によって作成されたサブ配列です。ここにミリ秒配列 $matches があります

Array 
(   
[0] => Array ( [0] => Oct02 [1] => Wed   [2] => OFF) 
[1] => Array ( [0] => 110px [1] => 124px [2] => 144px ) 
[2] => Array ( [0] => 76px  [1] => 82px  [2] => 84px ) 
[3] => Array ( [0] => 88px  [1] => 52px  [2] => 52px ) 
[4] => Array ( [0] => Oct02 [1] => Wed   [2] => OFF ) 
)

残念ながら、var が OFF かどうかに関係なく、すべての出力は false です。

var dump --> 出力で編集:

$var の内容を表示 OFF string(66) " OFF " false

両方の値はオフですが、読み取り値は偽です

4

0 に答える 0