南箋
用戶自定義函數(shù)也稱(chēng)自定義函數(shù),它們不是PHP提供的,是由程序員創(chuàng)建的.由于自己創(chuàng)建了這樣的函數(shù),所以就可以完全控制這些函數(shù).因此可以讓一個(gè)函數(shù)完全按照自己希望的方式運(yùn)行 1,申明函數(shù)在PHP中,定義函數(shù)的方法同其他編程語(yǔ)言幾乎一樣.下面是PHP申明函數(shù)的語(yǔ)法結(jié)構(gòu): 復(fù)制代碼代碼如下:Function function_name($argument1,$argument2,$argument3,......$argumentn) { //函數(shù)代碼code Return 返回值; } 以上語(yǔ)法結(jié)構(gòu)中,關(guān)鍵字的含義如下. (1)function:用于申明用戶自定義函數(shù)的關(guān)鍵字. (2)function_name:要?jiǎng)?chuàng)建的函數(shù)名稱(chēng).該名稱(chēng)將在以后被調(diào)用時(shí)使用.函數(shù)名應(yīng)該唯一,因?yàn)镻HP不支持重載.在命名函數(shù)的時(shí)候,需要遵循和變量命名 相同的原則.但是函數(shù)名不能以$開(kāi)頭,而變量可以. (3)argument:要傳遞給函數(shù)的值.函數(shù)可以有多個(gè)參數(shù),它們之間用逗號(hào).但是參數(shù)項(xiàng)是可選的,可以在調(diào)用函數(shù)的時(shí)候不傳遞任何參數(shù). (4)code:是在函數(shù)被調(diào)用的時(shí)候執(zhí)行的一段代碼.如果有兩條或者多條語(yǔ)句,則代碼必須用大括號(hào)"{}"括起來(lái).但是,如果只有一條代碼,則不需要大括號(hào). (5)Return:將調(diào)用的代碼需要的值返回.任何類(lèi)型都可以返回,包括列表和對(duì)象.這導(dǎo)致函數(shù)立即結(jié)束它的運(yùn)行,并且將控制權(quán)傳遞回它被調(diào)用的行. 2,無(wú)參數(shù)函數(shù) 代碼func_1.php 復(fù)制代碼代碼如下:<?php require 'a.php'; echo "我不會(huì)被執(zhí)行!"; ?> 3,有參數(shù)函數(shù) PHP支持按值傳遞參數(shù)(默認(rèn)),通過(guò)引用傳遞和默認(rèn)參數(shù)值.可變長(zhǎng)度參數(shù)列表僅在PHP4和后繼版本中被支持. (1)值傳遞參數(shù).按值進(jìn)行參數(shù)傳遞是PHP的默認(rèn)傳遞方式.使用這個(gè)方法,必須在主程序調(diào)用時(shí)傳遞一個(gè)值(參數(shù)). 代碼sum.php 復(fù)制代碼代碼如下:<?php function sum ($a,$b) { Echo $a+$b; } sum(100,20); //開(kāi)始調(diào)用該函數(shù) ?> (2)引用參數(shù).在按照值傳遞的時(shí)候,只有參數(shù)的副本傳遞給被調(diào)用的函數(shù).但是在被調(diào)用函數(shù)內(nèi)部對(duì)這些值的任何修改,都不會(huì)影響調(diào)用函數(shù) 中的原始值.引用傳遞其實(shí)也就是地址傳遞,將一個(gè)變量的地址作為參數(shù)傳遞. 代碼valuechange.php 復(fù)制代碼代碼如下:<?php $myNum=100; function Valuechange ($number) { $number=$number+1; Echo $number . "<br>"; } Valuechange($myNum); Echo $myNum; ?> (3)默認(rèn)值參數(shù).使用默認(rèn)的參數(shù)值傳遞方法,函數(shù)必須在調(diào)用的時(shí)候有一個(gè)參數(shù).如果沒(méi)有使用的值,就把默認(rèn)值傳遞給函數(shù)參數(shù).默認(rèn)值必須是常量表達(dá)式,不是變量, 類(lèi)成員或者函數(shù)調(diào)用. 提示:當(dāng)使用默認(rèn)參數(shù)時(shí),任何默認(rèn)參數(shù)必須放在非默認(rèn)參數(shù)的右側(cè);否則,可能函數(shù)不會(huì)按照預(yù)期的情況工作. 代碼func_default.php 復(fù)制代碼代碼如下:<?php $myNum=100; function Valuechange ($number) { $number=$number+1; Echo $number . "<br>"; } Valuechange($myNum); Echo $myNum; ?>
姜雪君
需要準(zhǔn)備的材料分別是:電腦、php編輯器、瀏覽器。
1、首先,打開(kāi)php編輯器,新建php文件,例如:index.php。
2、在index.php中,輸入代碼:echo nl2br('hello\nworld');。
3、瀏覽器運(yùn)行index.php頁(yè)面,此時(shí)hello和world中間被換行了。
天云神尊
PHP執(zhí)行命令的四種方法
方法一:使用exec函數(shù)執(zhí)行系統(tǒng)外部命令
原型:function exec(string $command,array[optional] $output,int[optional]$return_value)
<? exec("dir",$outPut); print_r($outPut);?>
說(shuō)明:列出和PHP執(zhí)行文件同級(jí)目錄下的所有目錄及文件信息。
知識(shí)點(diǎn):exec執(zhí)行系統(tǒng)外部命令時(shí)不會(huì)輸出結(jié)果,而是返回結(jié)果的最后一行,如果你想得到結(jié)果你可以使用第二個(gè)參數(shù),讓其輸出到指定的數(shù)組,此數(shù)組一個(gè)記錄代表輸出的一行,即如果輸出結(jié)果有20行,則這個(gè)數(shù)組就有20條記錄,所以如果你需要反復(fù)輸出調(diào)用不同系統(tǒng)外部命令的結(jié)果,你最好在輸出每一條系統(tǒng)外部命令結(jié)果時(shí)清空這個(gè)數(shù)組,以防混亂。第三個(gè)參數(shù)用來(lái)取得命令執(zhí)行的狀態(tài)碼,通常執(zhí)行成功都是返回0。
方法二:使用system函數(shù)執(zhí)行系統(tǒng)外部命令
原型:function system(string $command,int[optional] $return_value)
123
<? system("dir");?>
知識(shí)點(diǎn):system和exec的區(qū)別在于system在執(zhí)行系統(tǒng)外部命令時(shí),直接將結(jié)果輸出到游覽器,如果執(zhí)行命令成功則返回true,否則返回false。第二個(gè)參數(shù)與exec第三個(gè)參數(shù)含義一樣。
方法三:使用函數(shù)passthru執(zhí)行系統(tǒng)外部命令
原型:function passthru(string $command,int[optional] $return_value)
知識(shí)點(diǎn):passthru與system的區(qū)別,passthru直接將結(jié)果輸出到游覽器,不返回任何值,且其可以輸出二進(jìn)制,比如圖像數(shù)據(jù)。
方法四:反撇號(hào)`(和~在同一個(gè)鍵)執(zhí)行系統(tǒng)外部命令
123
<? echo `dir`;?>
知識(shí)點(diǎn):在使用這種方法執(zhí)行系統(tǒng)外部命令時(shí),你要確保shell_exec函數(shù)可用,否則是無(wú)法使用這種反撇號(hào)執(zhí)行系統(tǒng)外部命令的。
巨掌雀環(huán)
a.php<?php/*不知道你是想跳轉(zhuǎn)還是取回網(wǎng)頁(yè)內(nèi)容后顯示$type為T(mén)RUE時(shí)采用頁(yè)面跳轉(zhuǎn)方式$type為FALSE時(shí)采用取回內(nèi)容后顯示*/ $type = TRUE; if( isset( $_GET['url'] ) ){ $url = 'http://' . $_GET['url']; if( $type ){ header("Location: $url"); }else{ $page = file_get_contents($url); echo $page; }}else{ echo '未設(shè)置URL參數(shù)';}?>
寒山妖道
按照以下的使用說(shuō)明,可以快速的建立一個(gè)本地 PHP 開(kāi)發(fā)環(huán)境。建議將 PHP 升級(jí)到最新的版本。
1.PHP安裝
使用綠色方式,下載Zip文件解壓。
2.配置
在解壓的根目錄下找到php.ini-development,是用于開(kāi)發(fā)環(huán)境的配置文件;還有一個(gè)php.ini-production,這個(gè)是用于生產(chǎn)環(huán)境的配置文件。使用php.in-development,復(fù)制一份,重命名為php.ini。開(kāi)始編輯。
定位registe_globals =Off;
建議不要打開(kāi),區(qū)別在于這個(gè)值是用來(lái)打開(kāi)全局變量的,比如表單送過(guò)來(lái)的值,如果這個(gè)值設(shè)為“Off”,就只能用“$_POST['變量名']、$_GET['變量名']”等來(lái)取得送過(guò)來(lái)的值,如果設(shè)為“On”,就可以直接使用“$變量名”來(lái)獲取送過(guò)來(lái)的值,當(dāng)然,設(shè)為“Off”就比較安全,不會(huì)讓人輕易將網(wǎng)頁(yè)間傳送的數(shù)據(jù)截取。這個(gè)值是否改成“On”就看自己感覺(jué)了,是安全重要還是方便重要?
為了使php能夠調(diào)用其他模塊,可以以extension關(guān)鍵字搜索,定位到如下,去除選項(xiàng)前的分號(hào),則打開(kāi)此模塊的支持。
加載的模塊越多,占用的資源要稍微多些,可以忽略。比如要啟用mysql的支持,則找到如下
;extension=php_mysql.dll
去除前面的";"注釋就可以了。
所有的模塊都放在php解壓目錄下的ext目錄中,可以根據(jù)需要啟用。
3.與Apache協(xié)同工作
php以module方式與Apache相結(jié)合,打開(kāi)Apache的配置文件,以關(guān)鍵字“LoadModule”定位,配置要加載的模塊,
在最后添加如下兩行:
LoadModule php5_module D:/php/php5apache2_2.dll
PHPIniDir "D:/php"
第一行“LoadModule php5_module D:/php/php5apache2_2.dll”是指以module方式加載php,第二行“PHPIniDir "D:/php"”是指明php的配置文件php.ini的位置,是當(dāng)然,其中的“D:/php”要改成你先前選擇的php解壓縮的目錄。
在php的解壓目錄下同時(shí)有php5apache2.dll和php5apache2_2.dll,因?yàn)槲覀兊腶pache版本是2.2的,所以加載dll
使用php5apache2_2.dll,可以根據(jù)自己的情況配置。
卻敵環(huán)攻
代碼有誤寫(xiě)成這樣就好了:<?php $view = $_GET['view']?><?php if($view=="list"){?>顯示內(nèi)容1<?php }?><?php if($view=="normal"){?>顯示內(nèi)容2<?php }?>
孟優(yōu)
免費(fèi)學(xué)習(xí)網(wǎng)址:網(wǎng)頁(yè)鏈接
本回答被提問(wèn)者采納
柳如花
可以這樣:<?php echo '<script type="text/javascript" src="http://127.0.0.1/api.php?mod=js&bid=76"></script>';?>意思就是當(dāng)做字符串輸出瀏覽器能夠識(shí)別注意引號(hào)包含規(guī)則
劉裕安
date('m-d H:i', strtotime( '-1 Minute', strtotime($rs['kgtime'])));前提是, $rs['kgtime'] 必須是合法的日期時(shí)間格式, 主要是要帶有年份!