2014-04-26 75 views
0

我有一些問題,在環 這裏設置變量是我的代碼PHP的範圍變量未設置

$proxy_asdfzxcv=0; 

for($no_proxy_list=0;$no_proxy_list < count($proxy_listasdf) && $proxy_asdfzxcv==0; $no_proxy_list++) 
{ 
    $proxy_list_proxy=$proxy_listasdf[$no_proxy_list]; 
    ///restor backkup 
    $host=$host_backup; 
    $url=$url_backup; 
    $scheme=$scheme_backup; 
    $http_auth=$http_auth_backup; 
    $proxyauth=$proxyauth_backup; 
    $requestp=$request_backu; 
    //$hosts=$hosts_backup; 
    /// 
    $proxy=$proxy_list_proxy; 
    echo('proxy : '.$proxy); 
    if ($proxy) { 
     list ($proxyHost, $proxyPort) = explode (":", $proxy); 
     $host = $host . ($port != 80 && $port != 443 ? ":" . $port : ""); 
     $url = $scheme . $host . $url; 
    } 
    $errno = 0; 
    $errstr = ""; 
    $hosts = ($proxyHost ? $scheme . $proxyHost : $scheme . $host) . ':' . ($proxyPort ? $proxyPort : $port); 
    $fp = @stream_socket_client ($hosts, $errno, $errstr, 120, STREAM_CLIENT_CONNECT); 

    if (! $fp) { 
     echo('----- proxy is not ok!!!'); 
     $dis_host = $proxyHost ? $proxyHost : $host; 
     $dis_port = $proxyPort ? $proxyPort : $port; 
     ///error 
    } 
    else 
    { 
     echo('<br>----- proxy is ok!!!'); 
     $proxy_asdfzxcv=1; 
     echo($proxy_asdfzxcv); 
    } 
} 

if(! $proxy_asdfzxcv) 
{ 
    echo('<br>-----asdf proxy is not ok!!!'.$proxy_asdfzxcv); 
    html_error (sprintf (lang (88))); 
    exit(); 
} 

我沒有任何想法,爲什麼$ proxy_asdfzxcv IS0在最後一行...

這裏是我的輸出...

----- proxy is ok!!!1 
-----asdf proxy is not ok!!!0 

回答

0

您聲明$ proxy_asdfzxcv = 0退出循環所以這就是爲什麼問題。

檢查Manual爲PHP變量範圍

這將獲得$ proxy_asdfzxcv = 0和$ proxy_asdfzxcv = 1

if(! $proxy_asdfzxcv) 
{ 
    echo('<br>-----asdf proxy is not ok!!!'.$proxy_asdfzxcv); 
    html_error (sprintf (lang (88))); 
    exit(); 
} 
0

你可以簡單地嘗試 全球$ proxy_asdfzxcv!; 之前 $ proxy_list_proxy = $ proxy_listasdf [$ no_proxy_list];