La boucle foreach de la chaîne numérique du tableau bidimensionnel ne peut pas être comparée à un nombre. Essayez de la convertir en type int et le résultat deviendra directement 0.
焚天驻地
焚天驻地 2017-09-29 16:31:48
0
6
1554

Description du problème : foreach boucle le tableau bidimensionnel pour trouver le contenu qui répond aux conditions et le réorganise en un nouveau tableau bidimensionnel. La chaîne numérique obtenue est comparée au nombre et ne peut pas être comparée. tapez, et tous les résultats deviennent 0 ; (Le code suivant peut être exécuté directement)

        //创建curl资源
        $ch=curl_init();
        //设置url和对应项
        curl_setopt($ch, CURLOPT_URL, "http://match.sports.sina.com.cn/football/csl/opta_rank.php?item=shoot&year=2014&lid=8&type=1&dpc=1");
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);  //以文件形式返回而不是直接输出
        $data=curl_exec($ch);
        $my_file=fopen("shoot.html",'w') or die('no file');
        fwrite($my_file, $data);
        fclose($my_file);
        curl_close($ch);

        $my_file=fopen("shoot.html",'r');
        $res= fread($my_file,filesize("shoot.html"));
        fclose($my_file);
        
        //步骤2获取table内容转为数组
        $str1 = preg_replace("/<a[^>]*>/","", $res);
        $str2 = preg_replace("/<\/a>/","", $str1);
        preg_match('/<table[^>]*? class="tab01">(.*?)<\/table>/s',$str2,$match);
              
        preg_match_all('/<td.*?>.*?<\/td>/i',$match[0],$e1);
        
        foreach ($e1[0] as $k=>$v){
            $shoot_arr[ceil(($k+1)/8)-1][]=$v;
        }
        

        shuffle($shoot_arr);   //随机排序
         
        $left_10to50_arr=array();
        //var_dump($shoot_arr);
        foreach($shoot_arr as $keys=>$vals){  //
            $leftfoot=$shoot_arr[$keys][4];
            echo '<br/>';
             var_dump($leftfoot);
             echo '<br/>';
             var_dump((int)$leftfoot);   //强制转换为整型 数据变成0
             //获取满足条件的数据重组数组
            if($leftfoot >= 10 && $leftfoot<=50){  //不转换数据类型无法比较大小
                $left_10to50_arr[]=$vals;
            }
            if($keys>3)exit;
        }
        echo '<pre>';
        print_r($left_10to50_arr);
        echo '</pre>';
        exit;

Le format du tableau à deux dimensions est le suivant :

QQ图片20170929162436.png

Les caractères numériques deviennent 0 après la conversion, la situation est la suivante :

QQ截图20170929162647.jpg


焚天驻地
焚天驻地

répondre à tous(6)
朽木

Qu'est-ce que cela signifie pas assez de haricots ? Le cher ami ci-dessus, p bean ?

phpcn_u38476

333

phpcn_u38476

44444444444444433333333333

phpcn_u38476

Je veux 1 haricot 2 haricot 3 haricot 0 haricot 0 haricot - haricot = haricot 43 haricot 2 haricot 2 haricot 4 haricot 4 haricot

phpcn_u38476

Pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots

phpcn_u38476

Pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots, pas assez de haricots

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!