1. php imagedestroy函數可以銷毀內存中的圖片到底是什麼意思
這個銷毀是指你之前用過imagecreate()這樣的函數,是銷毀這里的圖片的。
2. php 終止函數
register_shutdown_function(「callback_func」);
參數為被調用的函數名
當PHP程序異常結束時,會調用被注冊的函數。
異常結束包括:程序被強制終止,致命錯誤,運行完成後。
用戶自定義函數一個函數可由以下的語法來定義:
任何有效的php代碼都有可能出現在函數內部,甚至包括其它函數和類定義。
在php3中,函數必須在被調用之前定義。而php4則不再有這樣的條件。函數如以下兩個範例中有條件的定義。
如果一個函數以以下兩個範例的方式有條件的定義,其定義必須在調用完成。
php中的所有函數和類都具有全局域,可以在內部定義外部調用,反之亦然。
php不支持函數重載,也不可能取消定義或者重定義已聲明的函數。
函數名是非大小寫敏感的,不過在調用函數的時候,通常使用其在定義時相同的形式。
php3雖然支持默認參數(更多信息請參照默認參數的值),但是卻不支持可變的參數個數。php4支持:見可變長度的參數列表和涉及到的相關函數,,以及以獲取更多的信息。
在php中可以調用遞歸函數。但是要避免遞歸函數/方法調用超過100-200層,因為可能會破壞堆棧從而使當前腳本終止。
3. php中怎樣銷毀一個靜態變數
如果在函數中 unset() 一個靜態變數,那麼在函數內部此靜態變數將被銷毀。但是,當再次調用此函數時,此靜態變數將被復原為上次被銷毀之前的值。
4. 【PHP】寫一個函數,array_remove(),要求最簡潔的清除 數組中值為$v的項
方法1:
function array_remove($array,$v){ // $array為操作的數組,$v為要刪除的值
foreach($array as $key=>$value){
if($value == $v){ //刪除值為$v的項
unset($array[$key]); //unset()函數做刪除操作
}
}
return $array;
}
注意:此方法刪除指定值之後,其他項的鍵與值都與原來的保持一樣
方法2:
function array_remove($array,$v){ // $array為操作的數組,$v為要刪除的值
$array = array_flip($array); //數組反轉函數,將數組原來的鍵變為值,值變為鍵,
unset($array["$v"]);
$array = array_flip($array); //再次反轉
return $array;
}
注意:此方法會合並相同值的項
5. php 刪除文件裡面的內容
一、關於 unset
unset 函數的功能是: 銷毀指定的變數。
而從你的問題描述中,想完成的是「刪除在db.php裡面的內容」,兩者明顯不太符合。
二、關於 del 函數代碼
從代碼中,沒有找到刪除文件內容的代碼(unset 是注銷變數):
include 是引入包含內容,
isset 是獲取傳過來的 id ,
$db[$id] 這個是獲取指定 id 的數組元素
6. PHP5.3與5.5廢棄與過期函數有哪些
從PHP5.3開始加入了一個新的報錯級別DEPRECATED,即將廢棄/過期。
在php5.3被放棄的函數有:
call_user_method() //使用 call_user_func() 替代
call_user_method_array() //使用 call_user_func_array() 替代
define_syslog_variables()
dl()
ereg() //使用 preg_match() 替代
ereg_replace() //使用 preg_replace() 替代
eregi() //使用 preg_match() 配合 'i' 修正符替代
eregi_replace() //使用 preg_replace() 配合 'i' 修正符替代
set_magic_quotes_runtime() //以及它的別名函數 magic_quotes_runtime()
session_register() //使用 $_SESSION 超全部變數替代
session_unregister() //使用 $_SESSION 超全部變數替代
session_is_registered() //使用 $_SESSION 超全部變數替代
set_socket_blocking() //使用 stream_set_blocking() 替代
split() //使用 preg_split() 替代
spliti() //使用 preg_split() 配合 'i' 修正符替代
sql_regcase()
mysql_db_query() //使用 mysql_select_db() 和 mysql_query() 替代
mysql_escape_string() //使用 mysql_real_escape_string() 替代
mysql_close(); // 將不支持全部關閉, 需要改為:mysql_close($link);
廢棄以字元串傳遞區域設置名稱. 使用 LC_* 系列常量替代.
mktime() 的 is_dst 參數. 使用新的時區處理函數替代.
PHP 5.4:
mcrypt_generic_end()
mysql_list_dbs()
PHP 5.5:
mcrypt_cbc()
mcrypt_cfb()
mcrypt_ecb()
mcrypt_ofb()
其中,PHP 5.3是廢棄函數的開始,很多常用的以前的正則ereg全部替換preg,但是魔術引號。居然也從PHP 5.3開始棄用,PHP 5.4就移除了。這個算是PHP 5.3的一個大變動吧。
PHP 5.4開始新增了很多特性,新增很多特殊寫法。
至於PHP 5.5,居然把MYSQL這個擴展去掉了,建議使用MYSQLI或者PDO!
用了5.5很多程序都會報錯,提示mysql_connect即將過期!!會看到如下錯誤:
Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in E:testnew 6.php on line 6
PHP5相對於4的跨進最大的就是類的部分,而影響更多的就是廢棄這些老習慣的東西吧。
雖然版本一直在升級,但是終究市場上還是大量的5.1.6-5.2.17。5.3開始廢棄很多特性,這就導致了很多程序也不敢直接上,5.5.直接秒殺了大量的開源產品!
7. php編寫的刪除函數delete(),想通過點擊刪除按鈕觸發函數功能,該怎麼寫這個按鈕
朋友,你的意思是點擊頁面上的一個按鈕觸發伺服器上一個PHP函數嗎?兩種方法:
1.通過表單傳遞。格式類似<form action="test.php" method="post">這個你應該會寫的吧,然後在test.php中調用你的函數。
2.通過AJAX傳遞。這個要看你用什麼ajax類了,沒有固定格式。原理是通過頁面非同步傳遞請求到後台,然後後台調用你的函數。
其實兩種方法只是傳遞方式不同,前者是同步的,後者是非同步的而已。調用PHP函數的方式沒什麼特別,就是正常調用函數而已,你也可以寫更多的代碼和操作。
8. php的unset()函數是否必要,對所有的變數最後都銷毀下,是否會較少的佔用cpu,
恭喜樓主,我剛才也在研究這一塊
array get_defined_vars ( void ) 這個函數
get_defined_constants 還有這一個
獲取變數後,用foreach便利一下。然後unset掉。
大變數如果多了伺服器就受不了。比如一個session佔12K
然後伺服器同時有10000個人訪問。不敢多說那就是120000K=120M的內存。這只是一個session。如果十個呢一個多G。所以極有必要
紅樓妓男,謝絕轉載
9. PHP中有沒有根據元素值來刪除元素的函數
沒有直接刪除的函數,但是有一個變通的函數:array_diff
<?php
$array1 = array("a" => "green", "red", "blue", "red");
$array2 = array("b" => "green");
$result = array_diff($array1, $array2);//這樣就相當於刪除$array1里的值為"green"的元素。
print_r($result);
?>
10. PHP可否刪除某個函數重新定義
那不是很簡單嗎?刪掉或注釋掉函數的定義,然後運行程序。php 會告訴你每一個使用這個函數的地方:undefine function xxxx