一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

一個簡單php擴(kuò)展介紹與開發(fā)教程

我們使用php擴(kuò)展,主要目的是提高程序的執(zhí)行效率,對于訪問量很大的代碼或者邏輯將其寫成擴(kuò)展。在做項目的過程中,需要對數(shù)據(jù)進(jìn)行排序,數(shù)據(jù)運(yùn)算比較復(fù)雜;我們準(zhǔn)備對一百萬個數(shù)據(jù)進(jìn)行排序, 下面是我在程序之前做的一個測試:首先使用php程序生成一百萬的隨機(jī)數(shù),并將其保存在文件中。
生成隨即數(shù)的代碼如下面所示:
復(fù)制代碼 代碼如下:
set_time_limit(0);
ini_set("memory_limit", -1);
$data = array();
for($i = 1; $i < 1000000; $i++)
  $data[] = rand();
file_put_contents('data.php', '<?php $data = ' . var_export($data, true) . "; ?>");

代碼很簡單,一看就明白,這里不作說明。
下面是使用php寫的快速排序,php自身帶的排序函數(shù),以及自己擴(kuò)展的排序函數(shù),它們所需時間如下所示:

下面將php代碼展示一下,需要說明的是:hello函數(shù)時自己寫的擴(kuò)展
復(fù)制代碼 代碼如下:
<?php
ini_set("memory_limit", -1);
set_time_limit(0);
include_once('data.php'); //剛才產(chǎn)生的隨機(jī)數(shù)保存在這個文件
$len = count($data);
$data_s = $data_q = $data;
$s_s = $s_t = array_sum(explode(" ", microtime()));
qsort($data, 0, $len-1);
$s_t = array_sum(explode(" ", microtime()));
sort($data_s);
$q_t = array_sum(explode(" ", microtime()));
$data_q = hello($data_q);
$r_t = array_sum(explode(" ", microtime()));
echo "php寫的快速排序時間: " . ($s_t-$s_s) . "<br>";
echo "系統(tǒng)排序函數(shù)使用時間為: " . ($q_t-$s_t) . "<br>";
echo "本地排序函數(shù)使用時間為: " . ($r_t-$q_t) . "<br>";
echo "兩個結(jié)果的對比:" . ($data_s === $data_q);
function qsort(&$arr, $l, $u)
{
if($l >= $u)
return;
$m = $l;
for($i = $l+1; $i<=$u; $i++)
{
if($arr[$i] < $arr[$l])
{
$m++;
if($m != $i)
{
$t = $arr[$i];
$arr[$i] = $arr[$m];
$arr[$m] = $t;
}
}
}
$t = $arr[$l]; $arr[$l] = $arr[$m]; $arr[$m] = $t;
qsort($arr, $l, $m-1);
qsort($arr, $m+1, $u);
}
?>

很簡單吧, 多的不說啦,下面說說這個擴(kuò)展的開發(fā)
生成 擴(kuò)展有一定的步驟,網(wǎng)上都有很講解,我這里也不再羅嗦,
首先使用php的庫文件生成一個基本的擴(kuò)展項目

生成的項目,

修改sort.c,將自己的快排寫進(jìn)去, 我這邊的代碼是將php程序的快速排序改成c語言。生成dll后,將其放在php擴(kuò)展中,首先檢查一下是否已將啟用擴(kuò)展。

然后 在代碼中直接使用hello函數(shù)(我這里沒有改函數(shù)名)

注意:擴(kuò)展一定要考慮全面,不能在使用中出錯,特別是C寫的代碼,否則會出現(xiàn)php系統(tǒng)崩潰

php技術(shù)一個簡單php擴(kuò)展介紹與開發(fā)教程,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 五月月色开心婷婷久久合 | 久久伊人精品青青草原2021 | 日本高清一区二区三区水蜜桃 | 亚洲六月丁香六月婷婷花 | 国产精品成人免费视频99 | www.色综合.com | 91麻豆精品国产综合久久久 | 久久久久久久久久免观看 | 加勒比高清在线 | 日本黄色激情视频 | 免费观看欧美一级特黄 | 日韩片在线观看 | 久久成人永久免费播放 | se就是色94欧美setu | 天天操天天干天天爽 | 亚洲香蕉网久久综合影院3p | 国产高级黄区18勿进一区二区 | 午夜激情在线视频 | 色五婷婷 | 小明日韩在线看看永久区域 | 成人福利在线观看免费视频 | 日韩中文字幕在线播放 | 亚洲狠狠97婷婷综合久久久久 | 久久久久久国产精品mv | 久久成人免费视频 | 久久久99精品久久久久久 | 精品国内一区二区三区免费视频 | 黄网在线观看网址入口 | 日本视频一区二区三区 | 日韩一二三 | 苦瓜se在线精品视频 | 欧美色综合图区 | 亚洲网站视频在线观看 | 巨胸喷奶水www久久久免费观看 | 中文字幕一区二区三区在线观看 | 亚洲一区二区高清 | 高清国产一区 | 欧洲精品码一区二区三区免费看 | 亚洲福利国产 | 免费一看一级毛片人 | 在线播放亚洲精品富二代91 |