導航:首頁 > 編程語言 > PHP實例方法

PHP實例方法

發布時間:2025-06-05 20:09:07

1. phpyun小程序 php微信小程序實例

php微信小程序實例及相關知識點

一、php處理微信小程序request請求

二、微信小程序向外部php文件傳遞參數

三、服務端api.php接收微信小程序數據請求

四、微信小程序圖片上傳功能實現

五、微信小程序開發教程概要

六、公眾號關聯小程序

七、微信小程序支付及退款

以上是關於php微信小程序實例及相關知識點的詳細介紹,希望能對您有所幫助。

2. php幾種排序演算法實例詳解

四種排序演算法的PHP實現:
1)插入排序(InsertionSort)的基本思想是:
每次將一個待排序的記錄,按其關鍵字大小插入到前面已經排好序的子文件中的適當位置,直到全部記錄插入完成為止。

2)選擇排序(SelectionSort)的基本思想是:
每一趟從待排序的記錄中選出關鍵字最小的記錄,順序放在已排好序的子文件的最後,直到全部記錄排序完畢。

3)冒泡排序的基本思想是:
兩兩比較待排序記錄的關鍵字,發現兩個記錄的次序相反時即進行交換,直到沒有反序的記錄為止。

4)快速排序實質上和冒泡排序一樣,都是屬於交換排序的一種應用。所以基本思想和上面的冒泡排序是一樣的。

1.sort.php文件如下:

<?php
classSort{
private$arr=array();
private$sort='insert';
private$marker='_sort';
private$debug=TRUE;
/**
*構造函數
*
*@paramarray例如:
$config=array(
'arr'=>array(22,3,41,18),//需要排序的數組值
'sort'=>'insert',//可能值:insert,select,bubble,quick
'debug'=>TRUE//可能值:TRUE,FALSE
)
*/
publicfunctionconstruct($config=array()){
if(count($config)>0){
$this->_init($config);
}
}
/**
*獲取排序結果
*/
publicfunctiondisplay(){
return$this->arr;
}
/**
*初始化
*
*@paramarray
*@returnbool
*/
privatefunction_init($config=array()){
//參數判斷
if(!is_array($config)ORcount($config)==0){
if($this->debug===TRUE){
$this->_log("sort_init_param_invaild");
}
returnFALSE;
}
//初始化成員變數
foreach($configas$key=>$val){
if(isset($this->$key)){
$this->$key=$val;
}
}
//調用相應的成員方法完成排序
$method=$this->sort.$this->marker;
if(!method_exists($this,$method)){
if($this->debug===TRUE){
$this->_log("sort_method_invaild");
}
returnFALSE;
}
if(FALSE===($this->arr=$this->$method($this->arr)))
returnFALSE;
returnTRUE;
}
/**
*插入排序
*
*@paramarray
*@returnbool
*/
privatefunctioninsert_sort($arr){
//參數判斷
if(!is_array($arr)ORcount($arr)==0){
if($this->debug===TRUE){
$this->_log("sort_array(insert)_invaild");
}
returnFALSE;
}
//具體實現
$count=count($arr);
for($i=1;$i<$count;$i++){
$tmp=$arr[$i];
for($j=$i-1;$j>=0;$j--){
if($arr[$j]>$tmp){
$arr[$j+1]=$arr[$j];
$arr[$j]=$tmp;
}
}
}
return$arr;
}
/**
*選擇排序
*
*@paramarray
*@returnbool
*/
privatefunctionselect_sort($arr){
//參數判斷
if(!is_array($arr)ORcount($arr)==0){
if($this->debug===TRUE){
$this->_log("sort_array(select)_invaild");
}
returnFALSE;
}
//具體實現
$count=count($arr);
for($i=0;$i<$count-1;$i++){
$min=$i;
for($j=$i+1;$j<$count;$j++){
if($arr[$min]>$arr[$j])$min=$j;
}
if($min!=$i){
$tmp=$arr[$min];
$arr[$min]=$arr[$i];
$arr[$i]=$tmp;
}
}
return$arr;
}
/**
*冒泡排序
*
*@paramarray
*@returnbool
*/
privatefunctionbubble_sort($arr){
//參數判斷
if(!is_array($arr)ORcount($arr)==0){
if($this->debug===TRUE){
$this->_log("sort_array(bubble)_invaild");
}
returnFALSE;
}
//具體實現
$count=count($arr);
for($i=0;$i<$count;$i++){
for($j=$count-1;$j>$i;$j--){
if($arr[$j]<$arr[$j-1]){
$tmp=$arr[$j];
$arr[$j]=$arr[$j-1];
$arr[$j-1]=$tmp;
}
}
}
return$arr;
}
/**
*快速排序
*@bywww.5wx.org
*@paramarray
*@returnbool
*/
privatefunctionquick_sort($arr){
//具體實現
if(count($arr)<=1)return$arr;
$key=$arr[0];
$left_arr=array();
$right_arr=array();
for($i=1;$i<count($arr);$i++){
if($arr[$i]<=$key)
$left_arr[]=$arr[$i];
else
$right_arr[]=$arr[$i];
}
$left_arr=$this->quick_sort($left_arr);
$right_arr=$this->quick_sort($right_arr);

returnarray_merge($left_arr,array($key),$right_arr);
}
/**
*日誌記錄
*/
privatefunction_log($msg){
$msg='date['.date('Y-m-dH:i:s').']'.$msg.' ';
return@file_put_contents('sort_err.log',$msg,FILE_APPEND);
}
}
/*Endoffilesort.php*/
/*Locationhtdocs/sort.php*/
2.sort_demo.php文件如下:

<?php
require_once('sort.php');
$config=array(
'arr'=>array(23,22,41,18,20,12,200303,2200,1192),
//需要排序的數組值
'sort'=>'select',
//可能值:insert,select,bubble,quick
'debug'=>TRUE
//可能值:TRUE,FALSE
);
$sort=newSort($config);
//var_mp($config['arr']);
var_mp($sort->display());
/*Endofphp*/

3. php獲取數組長度的方法(有實例)

在php中獲取數組長度方法很簡單,php為我們提供了兩個函數可以計算一維數組長度,如count,sizeof都可以直接統計數組長度哦,下面我們來看幾個實例吧。
php如何獲取數組的長度,使用php函數count(),或是sizeof()
例如:
復制代碼
代碼如下:
$arr
=
Array('0','1','2','3','4');
echo
count($arr);
//
輸出
5
$arr
=
array('A','B','C');
echo
sizeof($arr);
//輸出3
sizeof()和count()具有同樣的用途,這兩個函數都可以返回數組元素個數.可以得到一個常規標量變數中的元素個數,如果傳遞給這個函數的數組是一個空數組,或者是一個沒有經過設定的變數,返回的數組元素個數就是0;
兩函數功能一樣,手冊上講,sizeof()是函數count()的別名。
那麼多維數組長度要怎麼統計呢?繼續看例子
比如你讀取的數組是一個二維數組:
復制代碼
代碼如下:
<?php
$arr=array(

0=>array('title'
=>
'新聞1',
'viewnum'
=>
123,
'content'
=>
'ZAQXSWedcrfv'),

1=>array('title'
=>
'新聞2',
'viewnum'
=>
99,
'content'
=>
'QWERTYUIOPZXCVBNM')

);
?>
如果你想統計數組$arr的長度,也就是說該二維數組只有兩條新聞,你想要的數字也是2,但是如果使用count($arr)不同版本的php,統計的結果是不一樣的;
後來在php手冊中發現,count函數還有第二個參數,解釋如下:
count函數有兩個參數:
0(或COUNT_NORMAL)為默認,不檢測多維數組(數組中的數組);
1(或COUNT_RECURSIVE)為檢測多維數組,
所以如果要判斷讀取的數組$arr是不是有新聞信息,就要這樣寫了:
復制代碼
代碼如下:
<?php
if(is_array($arr)
&&
count($arr,COUNT_NORMAL)>0
)
{

.....
}
else
{

.....
}
?>
你可以使用這樣的代碼來測試該函數:
復制代碼
代碼如下:
<?php
$arr=array(

0=>array('title'
=>
'新聞1',
'viewnum'
=>
123,
'content'
=>
'ZAQXSWedcrfv'),

1=>array('title'
=>
'新聞2',
'viewnum'
=>
99,
'content'
=>
'QWERTYUIOPZXCVBNM')

);
echo
'不統計多維數組:'.count($arr,0);//count($arr,COUNT_NORMAL)
echo
"<br/>";
echo
'統計多維數組:'.count($arr,1);//count($arr,COUNT_RECURSIVE)
?>

4. php隱藏IP地址後兩位顯示為星號的方法

本文實例講述了php隱藏IP地址後兩位顯示為星號的方法。分享給大家供大家參考。具體實現方法如下:
我們在很多的公共網站中都會有碰到顯示用戶的IP時後面幾個IP段顯示為星號了,這樣很好的保護了用戶隱私了,感興趣的朋友可以一起來看看。
php正則格式化IP地址,隱藏後一位。
例子
復制代碼
代碼如下:<?php
//隱藏後一位
return
preg_replace('/(\d+)\.(\d+)\.(\d+)\.(\d+)/is',"$1.$2.$3.*",$ip);

//隱藏IP最後幾位為*
echo
ereg_replace("[^\.]{1,3}$","*",$ip);
?>
例子
php實現隱藏Ip地址最後一段或者最後兩段的方法
復制代碼
代碼如下:<?php
//--隱藏IP後幾位
$ip='127.0.0.1';
$reg1='/((?:\d+\.){3})\d+/';
$reg2='~(\d+)\.(\d+)\.(\d+)\.(\d+)~';
echo
preg_replace($reg1,"\\1*",$ip);//以上輸出結果為:127.0.0.*
echo
"------------------<br/>";
echo
preg_replace($reg2,"$1.$2.*.*",$ip);//以上輸出結果為:127.0.*.*
?>
例子
復制代碼
代碼如下:function
suohao($phone){
$p
=
substr($phone,0,3)."*****".substr($phone,8,3);
return
$p;
}
當然還有像數組以.分開之後把數組2,3進行替換就可以了或組合0,1數組就可以了。
希望本文所述對大家的php程序設計有所幫助。

5. php獲取數組長度的方法(有實例)

在PHP中,獲取數組長度的方法非常直觀,主要依賴於`count()`和`sizeof()`這兩個函數。它們均能有效地統計一維數組元素的數量,返回值為0表示數組為空。盡管手冊上提到`sizeof()`是`count()`的別名,但在處理多維數組時,`count()`的第二個參數起了關鍵作用。默認情況下(參數為0或COUNT_NORMAL),`count()`不檢測多維數組,但如果需要遞歸統計,參數應設置為1(或COUNT_RECURSIVE)。

例如,對於二維數組`$arr`,若直接使用`count($arr)`,結果可能因PHP版本不同而異。為確保正確處理多維數組,可以添加一個條件判斷,如下所示:

php

if (is_array($arr) && count($arr, COUNT_NORMAL) > 0) {

// 處理數組內容

} else {

// 處理空數組或非數組情況

}

// 測試代碼

$arr = array(

0 => array('title' => '新聞1', 'viewnum' => 123, 'content' => 'ZAQXSWedcrfv'),

1 => array('title' => '新聞2', 'viewnum' => 99, 'content' => 'QWERTYUIOPZXCVBNM')

);

echo '不統計多維數組:' . count($arr, 0) . '
';

echo '統計多維數組:' . count($arr, 1);

通過設置不同的參數,我們可以准確地獲取不同情況下的數組長度,無論是簡單的一維數組還是復雜多維數組。

6. php去掉一維數組的鍵值的實例方法

在 PHP 中,數組的每個元素都是由鍵值對(key-value)組成,通過元素的鍵名來訪問對應鍵的值。

提示:「索引」和「鍵名」指的是同一樣東西,「索引」多指數組數字形式的下標。

有時候,我們需要去掉一維數組的鍵值(value),只留下數組的鍵名(key),這要怎麼做?

此時,就可以使用array_keys()函數了。

array_key() 函數可以獲取數組中的部分或所有鍵名,語法格式如下:

array_keys($array [, $search_value = null [, $strict = false]])

參數說明如下:

$array:必選參數,為待操作的數組;

$search_value:可選參數,如果參數為空,則函數會返回數組中的所有鍵名,如果指定了該參數,則函數就只會返回值為 $search_value 的鍵名;

$strict:可選參數,判斷在搜索的時候是否使用嚴格模式,$strict 默認為 false,也就是非嚴格模式,在搜索時只比較類型,不比較類型,若將 $strict 設置為 true,也就是嚴格模式,在搜索時同時比較值和類型,等價於===。

array_key() 函數會以數組形式返回得到的數組鍵名。

 'it網',         'url'   => 'https://www.how234.com/',         'title' => 'PHP學習教程', ); $key=array_keys($array); var_mp($key); ?>

可以看到,去掉了一維數組的鍵值(value),只返回了一維數組的鍵名(key)。

內容擴展:

1、使用unset()函數可以用於取消設置關聯數組中的鍵及其值。

// 聲明關聯數組 $arr = array(     "1" => "加",     "2" => "減",     "3" => "乘",     "4" => "除" ); // 關聯數組中刪除鍵1及其值 unset($arr['1']); // 顯示數組元素 var_mp($arr);

2、使用array_diff_key()函數用於獲取一個或多個數組之間的差集。

此函數比較一個或多個數組之間的鍵並返回它們之間的差集。

// 聲明關聯數組 $arr = array(     "1" => "春",     "2" => "夏",     "3" => "秋",     "4" => "冬", ); // 從關聯數組中刪除鍵1及其值 $result = array_diff_key($arr,     array_flip((array) ['1'])); // 顯示數組元素 var_mp($result);

到此這篇關於php去掉一維數組的鍵值的實例方法的文章就介紹到這了。

                             

閱讀全文

與PHP實例方法相關的資料

熱點內容
php寫入xml 瀏覽:973
daemon命令行錯誤 瀏覽:568
php判斷是否為中文 瀏覽:342
活塞壓縮機噴油 瀏覽:100
scr指標源碼 瀏覽:729
手錶pdf 瀏覽:966
高海礦山空氣壓縮機 瀏覽:291
逆向思維pdf 瀏覽:719
java克隆實現 瀏覽:414
hdfsbalance命令 瀏覽:765
程序員養老院段子 瀏覽:482
伺服器路由表怎麼用 瀏覽:967
php內置函數源碼 瀏覽:848
資金回頭選股源碼 瀏覽:254
dz宏命令 瀏覽:355
蟻群演算法實現一維優化代碼 瀏覽:319
伺服器釋放有什麼用 瀏覽:390
解壓包子洗了變粘了怎麼辦 瀏覽:830
635除以三十的簡便演算法 瀏覽:640
樂高ev3編程軟體安卓 瀏覽:337