#######?基本的數(shù)據(jù)結構?########
創(chuàng)新互聯(lián)是專業(yè)的獲嘉網(wǎng)站建設公司,獲嘉接單;提供網(wǎng)站建設、成都網(wǎng)站制作,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行獲嘉網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!
//二分查找(數(shù)組里查找某個元素)
function?bin_sch($array,?$low,?$high,?$k){?
if?($low?=?$high){?
$mid?=?intval(($low+$high)/2);?
if?($array[$mid]?==?$k){?
return?$mid;?
}elseif?($k??$array[$mid]){?
return?bin_sch($array,?$low,?$mid-1,?$k);?
}else{?
return?bin_sch($array,?$mid+1,?$high,?$k);?
}?
}?
return?-1;?
}?
//線性表的刪除(數(shù)組中實現(xiàn))
function?delete_array_element($array,?$i)
{
$len?=?count($array);?
for?($j=$i;?$j$len;?$j++){
$array[$j]?=?$array[$j+1];
}
array_pop($array);
return?$array;
}
//冒泡排序(數(shù)組排序)
function?bubble_sort($array)
{
$count?=?count($array);
if?($count?=?0)?return?false;
for($i=0;?$i$count;?$i++){
for($j=$count-1;?$j$i;?$j--){
if?($array[$j]??$array[$j-1]){
$tmp?=?$array[$j];
$array[$j]?=?$array[$j-1];
$array[$j-1]?=?$tmp;
}
}
}
return?$array;
}
//快速排序(數(shù)組排序)
function?quicksort($array)?{
if?(count($array)?=?1)?return?$array;
$key?=?$array[0];
$left_arr?=?array();
$right_arr?=?array();
for?($i=1;?$icount($array);?$i++){
if?($array[$i]?=?$key)
$left_arr[]?=?$array[$i];
else
$right_arr[]?=?$array[$i];
}
$left_arr?=?quicksort($left_arr);
$right_arr?=?quicksort($right_arr);
return?array_merge($left_arr,?array($key),?$right_arr);
}
#######?自實現(xiàn)函數(shù)?#######
//插入一段字符串
function?str_insert($str,?$i,?$substr)
{
for($j=0;?$j$i;?$j++){
$startstr?.=?$str[$j];
}
for?($j=$i;?$jstrlen($str);?$j++){
$laststr?.=?$str[$j];
}
$str?=?($startstr?.?$substr?.?$laststr);
return?$str;
}
//刪除一段字符串
function?str_delete($str,?$i,?$j)
{
for?($c=0;?$c$i;?$c++){
$startstr?.=?$str[$c];
}
for?($c=($i+$j);?$cstrlen($str);?$c++){
$laststr?.=?$str[$c];
}
$str?=?($startstr?.?$laststr);
return?$str;
}
//復制字符串
function?strcpy($s1,?$s2)
{
if?(strlen($s1)==NULL?||?!isset($s2))?return;
for?($i=0;?$istrlen($s1);?$i++){
$s2[]?=?$s1[$i];
}
return?$s2;
}
//連接字符串
function?strcat($s1,?$s2)
{
if?(!isset($s1)?||?!isset($s2))?return;
$newstr?=?$s1;
for($i=0;?$icount($s);?$i++){
$newstr?.=?$st[$i];
}
return?$newsstr;
}
//簡單編碼函數(shù)(與php_decode函數(shù)對應)
function?php_encode($str)
{
if?($str==''??strlen($str)128)?return?false;
for($i=0;?$istrlen($str);?$i++){
$c?=?ord($str[$i]);
if?($c31??$c107)?$c?+=?20;
if?($c106??$c127)?$c?-=?75;
$word?=?chr($c);
$s?.=?$word;
}?
return?$s;?
}
//簡單解碼函數(shù)(與php_encode函數(shù)對應)
function?php_decode($str)
{
if?($str==''??strlen($str)128)?return?false;
for($i=0;?$istrlen($str);?$i++){
$c?=?ord($word);
if?($c106??$c127)?$c?=?$c-20;
if?($c31??$c107)?$c?=?$c+75;
$word?=?chr($c);
$s?.=?$word;
}?
return?$s;?
}
//簡單加密函數(shù)(與php_decrypt函數(shù)對應)
function?php_encrypt($str)
{
$encrypt_key?=?'abcdefghijklmnopqrstuvwxyz1234567890';
$decrypt_key?=?'ngzqtcobmuhelkpdawxfyivrsj2468021359';
if?(strlen($str)?==?0)?return?false;
for?($i=0;?$istrlen($str);?$i++){
for?($j=0;?$jstrlen($encrypt_key);?$j++){
if?($str[$i]?==?$encrypt_key[$j]){
$enstr?.=?$decrypt_key[$j];
break;
}
}
}
return?$enstr;
}
//簡單解密函數(shù)(與php_encrypt函數(shù)對應)
function?php_decrypt($str)
{
$encrypt_key?=?'abcdefghijklmnopqrstuvwxyz1234567890';
$decrypt_key?=?'ngzqtcobmuhelkpdawxfyivrsj2468021359';
if?(strlen($str)?==?0)?return?false;
for?($i=0;?$istrlen($str);?$i++){
for?($j=0;?$jstrlen($decrypt_key);?$j++){
if?($str[$i]?==?$decrypt_key[$j]){
$enstr?.=?$encrypt_key[$j];
break;
}
}
}
return?$enstr;
}?
到此為止吧:)
PHP屬于編程語言的一種,是一種用于創(chuàng)建動態(tài)和交互式HTML網(wǎng)頁的腳本語言。
編程語言是一種被標準化的交流技巧,用來向計算機發(fā)出指令,定義計算機程序,讓程序員能夠準確地定義計算機所需要使用的數(shù)據(jù),并精確地定義在不同情況下所應當采取的行動的一種計算機語言。而編程語言包含很多細分,而PHP就是其中一種。
它的主要特性為:
①開源性和免費性
由于PHP的解釋器的源代碼是公開的,所以安全系數(shù)較高的網(wǎng)站可以自己更改PHP的解釋程序。另外,PHP運行環(huán)境的使用也是免費的。
②快捷性
PHP是一種非常容易學習和使用的一門語言,它的語法特點類似于C語言,但又沒有C語言復雜的地址操作,而且又加入了面向對象的概念,再加上它具有簡潔的語法規(guī)則,使得它操作編輯非常簡單,實用性很強。
③數(shù)據(jù)庫連接的廣泛性
PHP可以與很多主流的數(shù)據(jù)庫建立起連接,如MySQL、ODBC、Oracle等,PHP是利用編譯的不同函數(shù)與這些數(shù)據(jù)庫建立起連接的,PHPLIB就是常用的為一般事務提供的基庫。
④面向過程和面向對象并用
在PHP語言的使用中,可以分別使用面向過程和面向對象,而且可以將PHP面向過程和面向對象兩者一起混用,這是其它很多編程語言是做不到的。
優(yōu)點
①流行,容易上手
PHP是目前最流行的編程語言,這毋庸置疑。它驅動全球超過2億多個網(wǎng)站,有全球超過81.7%的公共網(wǎng)站在服務器端采用PHP。PHP常用的數(shù)據(jù)結構都內置了,使用起來方便簡單,也一點都不復雜,表達能力相當靈活。
②開發(fā)職位很多
在服務器端的網(wǎng)站編程中PHP會更容易幫助你找到工作。很多互聯(lián)網(wǎng)相關企業(yè)都在使用PHP開發(fā)框架,所以可以說市場對PHP的開發(fā)程序員的需求還是比較大的。
③仍然在不斷發(fā)展
PHP在不斷兼容著類似closures和命名空間等技術,同時兼顧性能和當下流行的框架。版本是7之后,一直在提供更高性能的應用。
④可植入性強
PHP語言在補丁漏洞升級過程中,核心部分植入簡單易行,且速度快。
⑤拓展性強
PHP語言在數(shù)據(jù)庫應用過程中,可以從數(shù)據(jù)庫調取各類數(shù)據(jù),執(zhí)行效率高
PHP(中文名:“超文本預處理器”)是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利于學習,使用廣泛,主要適用于Web開發(fā)領域。
PHP獨特的語法混合了C、Java、Perl以及PHP自創(chuàng)的語法。它可以比CGI或者Perl更快速地執(zhí)行動態(tài)網(wǎng)頁。用PHP做出的動態(tài)頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執(zhí)行,執(zhí)行效率比完全生成HTML標記的CGI要高許多。
PHP還可以執(zhí)行編譯后代碼,編譯可以達到加密和優(yōu)化代碼運行,使代碼運行更快。
PHP在數(shù)據(jù)庫方面的豐富支持,也是它迅速走紅的原因之一,它支持下列的數(shù)據(jù)庫或是數(shù)據(jù)文件:
Adabas 、D、 DBA、dBase 、dbm 、filePro 、Informix 、InterBase、mSQL 、Microsoft SQL Server、·MySQL、Solid、Sybase、 Oracle 、PostgreSQL
而在Internet上它也支持了相當多的通訊協(xié)議 (protocol),包括了與電子郵件相關的 IMAP,POP3;網(wǎng)管系統(tǒng) SNMP;網(wǎng)絡新聞NNTP;帳號共用 NIS;全球信息網(wǎng)HTTP及Apache服務器;目錄協(xié)議LDAP以及其它網(wǎng)絡的相關函數(shù)。
擴展資料:
PHP的特性包括:
1、PHP獨特的語法混合了 C、Java、Perl 以及 PHP 自創(chuàng)新的語法。
2、PHP可以比CGI或者Perl更快速的執(zhí)行動態(tài)網(wǎng)頁——動態(tài)頁面方面,與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執(zhí)行,執(zhí)行效率比完全生成htmL標記的CGI要高許多;PHP具有非常強大的功能,所有的CGI的功能PHP都能實現(xiàn)。
3、PHP支持幾乎所有流行的數(shù)據(jù)庫以及操作系統(tǒng)。
4、PHP可以用C、C++進行程序的擴展。
參考資料:
百度百科--PHP