>백엔드 개발 >PHP 튜토리얼 >분노의 질주 7 흥행 실시간 업데이트는 프로그래밍 속도가 아닌 프로그램 속도를 추구합니다.

분노의 질주 7 흥행 실시간 업데이트는 프로그래밍 속도가 아닌 프로그램 속도를 추구합니다.

WBOY
WBOY원래의
2016-07-29 08:37:571648검색

​ 1. PHP의 echo 문 대신 내장된 HTML 코드를 사용합니다.
PHP는 내장형 웹 프로그래밍 언어이기 때문에 HTML 코드와 PHP 코드가 서로 내장될 수 있습니다. 그러나 많은 프로그래머들은 HTML 코드에 PHP 코드를 삽입하기 위해 ""를 과도하게 사용하면 PHP 인터프리터를 여러 번 호출하여 PHP 코드의 실행 속도가 저하될 것을 우려하여 대신 HTML 코드를 출력하기 위해 PHP의 echo 문을 사용합니다. HTML 코드를 직접 사용하세요. 그러나 진실은 정반대입니다. 각 PHP 페이지는 PHP 인터프리터를 한 번만 호출하여 모든 PHP 코드를 해석합니다. 따라서 PHP 코드는 필요한 경우에만 삽입되며 대부분의 경우 HTML 코드를 직접 사용하여 결과를 입력하지 않습니다. 프로그램의 실행 속도는 줄어들지만 에코 문의 구문 분석이 줄어들기 때문에 코드의 실행 속도가 향상될 수 있는 경우가 많습니다.
다음 코드는 우리의 결론을 증명합니다. 이 코드에서는 앞서 소개한 시간 테스트 기능을 사용합니다.
2. ereg-replace 대신 str-replace를 사용하세요
Perl 프로그래밍에 익숙한 프로그래머는 문자열 교체 작업을 완료하기 위해 ereg_replace를 더 선호합니다. 왜냐하면 PHP에서 ereg_replace의 사용법은 다음의 사용법과 유사하기 때문입니다. Perl의 패턴 일치. 그러나 다음 코드는 ereg_replace 대신 str_replace를 사용하면 코드 실행 속도가 크게 향상된다는 것을 증명합니다.
str_replace 및 ereg_replace의 실행 속도 테스트
//이 코드는 str_replace의 실행 속도를 테스트합니다.
emphasis;
for ($i=0; $i<1000; $i++) {
str_replace(i>, b>, $string).
}
?>
//이 코드는 ereg_replace
의 실행 속도를 테스트합니다($i=0; $ i< ;1000; $i++) {
ereg_replace(<([/]*)i>, <1b>, $string)
}
?>
결론
str_replace 사용 시간 -
ereg_pattern 사용 시간 -
위 코드를 실행하면 결과는 다음과 같습니다.
str_replace 사용 시간 - 0.089757
ereg_pattern 사용 시간 - 0.248881
실행 결과를 보면 문자열 대체 함수로 ereg_replace 대신 str_replace를 사용하면 코드 실행 속도가 크게 향상되는 것을 확인할 수 있습니다.
3. 문자열 인용에 주의하세요
다른 많은 프로그래밍 언어와 마찬가지로 PHP는 문자열을 인용하기 위해 큰따옴표("")를 사용하거나 작은따옴표()를 사용할 수 있습니다. 그러나 PHP에서는 큰따옴표를 사용하여 문자열을 인용하면 PHP 파서는 먼저 문자열에 변수에 대한 참조가 있는지 분석합니다. 변수가 있으면 해당 변수를 대체합니다. 작은따옴표인 경우 그다지 복잡하지 않습니다. 작은따옴표로 묶인 모든 문자열이 직접 표시됩니다. 분명히, PHP 프로그래밍에서는 큰따옴표보다 작은따옴표를 사용하여 문자열 변수를 인용하는 것이 더 빠릅니다.
4. 데이터베이스에서 공동 작업 사용을 피하세요
다른 웹 프로그래밍 언어에 비해 PHP의 데이터베이스 기능은 매우 강력합니다. 그러나 PHP에서 데이터베이스를 실행하는 것은 여전히 ​​시간이 많이 걸리고 노동 집약적인 문제입니다. 따라서 웹 프로그래머는 데이터베이스 쿼리 작업을 최소화하고 데이터베이스에 적합한 인덱스를 설정해야 합니다. 또 한 가지 주목할 점은 PHP를 사용하여 데이터베이스를 운영할 때 여러 데이터 테이블의 공동 작업을 사용하지 않는 것입니다. 공동 작업은 데이터베이스의 쿼리 기능을 향상시킬 수 있지만 서버에 대한 부담을 크게 증가시킵니다.
이 문제를 설명하기 위해 아래의 간단한 예를 살펴보겠습니다.
데이터베이스에 foo와 big_foo라는 두 개의 데이터 테이블을 만들었습니다. 데이터 테이블 foo에는 1부터 1000까지의 모든 자연수를 포함하는 필드가 하나만 있습니다. 데이터 테이블 big_foo에도 필드가 하나만 있지만 1부터 1,000,000까지의 모든 자연수가 포함되어 있습니다. 따라서 크기 측면에서 big_foo는 foo 자체와 결합된 것과 같습니다.
$db->query("foo에서 * 선택");
0.032273초
$db->next_record()
0.00048999999999999초
$db->query( "foo 값에 삽입 ​​(NULL)");
0.019506초
$db->query("select * from foo as a, foo as b"); $db ->query("select * from foo as a, foo as b where a.id >14.645251 secs
$db->query("select * from foo) as a , foo as b where a.id = b.id");
0.041269초
$db->query("select **** from big_foo");
25.393672초
작업 결과 위에서 우리는 1,000개의 레코드가 있는 두 개의 데이터 테이블을 결합하는 것이 1,000,000개의 레코드가 있는 대규모 데이터 테이블에서 단독으로 작업하는 것보다 훨씬 빠르지 않다는 것을 알 수 있습니다.
5. include와 require의 차이점에 주의하세요
PHP 프로그래밍에서 include()와 require()는 동일한 기능을 가지고 있지만, 사용법에 약간의 차이가 있습니다. require()는 무조건 포함 함수입니다. 예를 들어, 다음 예에서 $sogthing 변수가 true이면 somefile 파일이 포함됩니다.
if($something){
include("somefile")
}
그러나 $에 관계없이 어떤 값이 필요합니까? 다음 코드는 somefile 파일을 파일에 포함합니다.
if($something){
require("somefile")
}
다음은 흥미로운 내용입니다. 예제로 충분합니다. 이 두 기능의 차이점을 설명하세요.
$i = 1;
while ($i < 3) {
require("somefile.$i");
$i++; 프로그램은 반복될 때마다 동일한 파일을 포함합니다. 분명히 이것은 프로그래머의 원래 의도가 아닙니다. 코드에서 우리는 이 코드가 각 루프에 다른 파일을 포함하기를 원한다는 것을 알 수 있습니다. 이 기능을 완료하려면
include(){
$i = 1
while ($i < 3) {
include("somefile.$; i");
$i++;
}
6. echo와 print의 차이점에 주목하세요
PHP에서 echo와 print의 기능은 기본적으로 동일하지만, 미묘한 차이가 있습니다. 둘. PHP 코드에서 print를 일반 함수로 사용할 수 있습니다. 예를 들어 다음 코드를 실행하면 $res 변수의 값은 1이 됩니다.
$ret = print "Hello World";
이는 print는 일부 복잡한 표현에 사용할 수 있지만 echo는 사용할 수 없음을 의미합니다. 마찬가지로 echo 문은 반환되는 값이 필요하지 않기 때문에 코드의 print 문보다 약간 빠르게 실행됩니다.
이상은 분노의 질주 7 흥행의 실시간 업데이트에 대해 소개한 것입니다. 프로그래밍의 속도보다는 프로그램 속도 추구에 분노의 질주 7 흥행의 실시간 업데이트가 포함되길 바랍니다. PHP 튜토리얼에 관심이 있는 친구들에게 도움이 됩니다.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.