PHP:經常使用問題總結

1.跨域請求接口問題php

//ajax請求python離線版跨域問題python

header('Access-Control-Allow-Origin: *');web

header('Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept');ajax

2.複製文件到文件夾函數跨域

//要複製的目標目錄文件所在的路徑$source
//要複製到的目錄名稱$dest
//複製目錄函數
function copydir($source, $dest)
{
  if (!file_exists($dest)) mkdir($dest);
  $handle = opendir($source);
  while (($item = readdir($handle)) !== false) {
    if ($item == '.' || $item == '..') continue;
    $_source = $source . '/' . $item;
    $_dest = $dest . '/' . $item;
    if (is_file($_source)) copy($_source, $_dest);
    if (is_dir($_source)) copydir($_source, $_dest);
  }
  closedir($handle);
}cookie

3.提取數字,提取idapp

    public function findNum($str=''){函數

        $str=trim($str);this

        if(empty($str)){url

            return '';

        }

        $result='';

        for($i=0;$i<strlen($str);$i++){

            if(is_numeric($str[$i])){

                $result.=$str[$i];

            }

        }

        return $result;

    }

    // $str='http://www.haohaodada.com/wulink-python3/index.php?id=5063';

    // $id=$this->findNum($str);

// var_dump($id);exit;

4. 提取最後一個等號後面的值,即id

    public function cut_str($str,$sign,$number){

          $array=explode($sign, $str);

          $length=count($array);

          if($number<0){

              $new_array=array_reverse($array);

              $abs_number=abs($number);

              if($abs_number>$length){

                  return 'error';

              }else{

                  return $new_array[$abs_number-1];

              }

          }else{

              if($number>=$length){

                  return 'error';

              }else{

                  return $array[$number];

              }

          }

      }

      // $str='http://www.haohaodada121.com/wulink-python3/inde2321x.p12hp?id1=5063';

 // $id=$this->cut_str($str,'=',-1);

 //    var_dump($id);

5. 判斷是https/http

function is_https() {

    if ( !empty($_SERVER['HTTPS']) && strtolower($_SERVER['HTTPS']) !== 'off') {

        return true;

    } elseif ( isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https' ) {

        return true;

    } elseif ( !empty($_SERVER['HTTP_FRONT_END_HTTPS']) && strtolower($_SERVER['HTTP_FRONT_END_HTTPS']) !== 'off') {

        return true;

    }

    return false;

}

//判斷是否包含www

$http_host=$_SERVER['SERVER_NAME'];

if(is_https()){

      if(strpos($http_host,'www') !== false){

           echo "https://www.haohaodada.com/uploadfile/".$binname;

      }else{

           echo "https://haohaodada.com/uploadfile/".$binname;

      }

}else{

      if(strpos($http_host,'www') !== false){

           echo "http://www.haohaodada.com/uploadfile/".$binname;

      }else{

           echo "http://haohaodada.com/uploadfile/".$binname;

      }

}

6. 讀取中文cookie值

 

7.web.config地址重寫

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<handlers>
<remove name="PHP-7.1-7i24.com" />
<remove name="PHP-7.0-7i24.com" />
<remove name="PHP-5.6-7i24.com" />
<remove name="PHP-5.5-7i24.com" />
<remove name="PHP-5.4-7i24.com" />
<remove name="PHP-5.3-7i24.com" />
<remove name="PHP-5.2-7i24.com" />
<add name="PHP-5.5-7i24.com" path="*.php" verb="*" modules="FastCgiModule" scriptProcessor="c:\php\5.5\php-cgi.exe" resourceType="Either" />
</handlers>
<rewrite>
<rules>

<rule name="Force HTTPS" stopProcessing="true">
<match url="(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTPS}" pattern="off" ignoreCase="true" />
<add input="{REQUEST_URI}" negate="true" pattern="/ADD_PATTERM_TO_EXCLUDE_FILES_OR_FOLDERS/" ignoreCase="true" />
</conditions>
<action type="Redirect" url="http://haohaodada.com/{R:1}" appendQueryString="true" redirectType="Permanent" />
</rule>

</rules>
</rewrite>
</system.webServer>
</configuration>

<!-- https://blog.csdn.net/WuLex/article/details/101627480 -->

相關文章
相關標籤/搜索