PHP 実行効率の概要 (プロンプト プログラム速度)

WBOY
リリース: 2016-06-13 12:20:39
オリジナル
827 人が閲覧しました

1. 関数で配列を渡す場合、グローバル
を使用するよりも return を使用する
の方が効率的です。 たとえば、

function userloginfo($usertemp){
$detail=explode("| ",$usertemp );
return $detail;
}
$login=userloginfo($userdb);

function userloginfo($usertemp){
global $detail;
$detail=explode("|",$usertemp);
}
userloginfo($userdb);

2、(このコードはプログラム ディレクトリに対応する URL、推奨)
$urlarray=explode('/',$HTTP_SERVER_VARS['REQUEST_URI']);
$urlcount=count($urlarray);unset($urlarray[$urlcount] -1]);
$ofstarurl='http://'.$HTTP_SERVER_VARS['HTTP_HOST'].implode('/',$urlarray);
このコードは
$pre_urlarray= よりも優れていますexplode('/',$HTTP_SERVER_VARS ['HTTP_REFERER']);
$pre_url=array_pop($pre_urlarray);
ループ内で判定する場合、ID を使用する方が効率的です。
$a= 2;$b=2;
if($a==$b)$c=$a;
than
; ($a===$b)$c=$ a;
効率的
4. mysql をクエリするときは、
limit を使用して最初の数レコードを確認します。多くのレコードの場合は非常に高速ですが、最後の数レコードのクエリは遅くなります。
で使用します。連続レコードの最初の実行は非常に遅くなります。
5、NT サーバーのデータ動作の安定性は unix/linux ほど安定していません。
6、出力する前に ob_start() を使用すると出力が高速化されます。 NT または nuli/linux に適しています。 unlix サーバーの場合、ob_start('ob_gzhandler'); を使用すると出力効率が高くなります。
7. 判断するときに if ($a==his の値) を使用してみてください。否定するときに if(empty($a)) を使用すると、プログラムの実行が速くなります
8、unequal != を使用する場合は
9 と同等です。個人的な経験から、 $a="11111111111111"; は $a='11111111111111'; と同等です。本に書かれているほど違いはありません。
10. 標準化された SQL ステートメントを使用すると、MySQL に有益です。
11、if($online){
$online1=$online;
setcookie('online1',$online,$cookietime,$ckpath,$ckdomain,$secure); 🎜>COOKIE はすぐに有効になります

if($online)
setcookie('online1',$online,$cookietime,$ckpath,$ckdomain,$secure) を使用します

COOKIE を有効にするには再度更新する必要があります
12、
$handle=fopen($filename,wb);
$filedata =fread($handle); を使用します,filesize($filename));
fclose($handle);
速度と安定性の両方で優れています
13. 切り捨てのための最適化関数文字列 (? 文字の出現を回避できます)
function substrs($content,$length) {
if(strlen($content)>$length){
$num=0 ; for($i=0;$iif(ord($content[$i])>127)$num ;
}
$num% 2==1 ? $content=substr($content,0,$length-4):$content=substr($content,0,$length-3);
}
return $content;
}

たとえば、プログラム Mask では $newarray[1]=substrs($newarray[1],25); case
for ($asc=65;$asc{ //strto lower() この関数は一部のサーバーで文字化けを生成します。
if (strrpos($regname, chr) ($asc))!==false)
{
$error="ユーザー名での混乱を避けるため、ユーザー名には大文字は禁止されています。小文字を使用してください。"; ;
}
}


15、file(); および fget() を使用しないでください (不安定または遅い) 配列関数
function openfile( $ filename,$method="rb")
{
$handle=@fopen($filename,$method)
@flock($handle,LOCK_SH); ( $handle,filesize($filename));
@fclose($handle);
$filedata=str_replace("n","n",$filedata); filedb =explode("",$filedata);
//array_pop($filedb);
$count=count($filedb); - 1]==''){unset($filedb[$count-1]);}
return $filedb;
}
//この関数には多くのコードがありますが、速度と安定性の点での利点は非常に大きいです。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート