Ⅰ php的語言結構和函數的區別
相信大家經常看到對比一些PHP應用中,說用isset() 替換 strlen(),isset比strlen執行速度快等。
例子:
if ( isset($username[5]) ) {
// The username is at least six characters long.
}
原因是isset是語言結構,而strlen是一個函數。那什麼是語言結構呢?它和函數有什麼不同嗎?
1、 什麼是語言結構和函數
語言結構:就是PHP語言的關鍵詞,語言語法的一部分;它不可以被用戶定義或者添加到語言擴展或者庫中;它可以有也可以沒有變數和返回值。
函數: 由代碼塊組成的,可以復用。
2、 語言結構為什麼比函數快
原因是在PHP中,函數都要先被PHP解析器分解成語言結構,所以有此可見,函數比語言結構多了一層解析器解析。這樣就能比較好的理解為
什麼語言結構比函數快了。
3、 語言結構和函數的不同
語言結構比對應功能的函數快
語言結構在錯誤處理上比較魯棒,由於是語言關鍵詞,所以不具備再處理的環節
語言結構不能在配置項(php.ini)中禁用,函數則可以。
語言結構不能被用做回調函數
Ⅱ php中的方法和函數是一個意思嗎
英文里是一個單詞。
但是在php中場合不一樣,叫法也不一樣
對於一般的情況,叫方法和函數都一樣,但是在類里(class),都統一叫方法
Ⅲ c語言 結構體函數:PHP的語言結構和函數的區別
1、 什麼是語言結構和函數
語言結構:就是PHP語言的關鍵詞,語言語法的一部分;它不可以被用戶定義或者添加到語言擴展或者庫中;它可以有也可以沒有變數和返回值。
函數:由代碼塊組成的,可以復用。從源碼的角度來說,也就是基於Zend引擎的基礎來實現的,ext拓展庫中的函數都是這樣實現的。
2、 語言結構為什麼比函數快原因是在PHP中,函數都要先被PHP解析器(Zend引擎)分解成語言結構,所以有此可見,函數比語言結構多了一層解析器解析。這樣就能比較好的理解,什麼語言結構比函數快了。
3、 語言結構和函數的不同語言結構比對應功能的函數快語言結構在錯誤處理上比較魯棒,由於是語言關鍵詞,所以不具備再處理的環節語言結構不能在配置項(php.ini)中禁用,函數則可以。語言結構不能被用做回調函數
4、 語言結構列表
echo()
print()
die()
isset()
unset()
include(),注意,include_once()是函數
require(),注意,require_once()是函數
array()
list()
Ⅳ php 在一個類中 定義一個方法和一個函數兩者有什麼區別
類的方法可以設定訪問許可權,需要通過對象或者類來調用;函數是公共的,都可以使用。
Ⅳ PHP中構造函數和方法有什麼區別
構造函數 在 新建一個對象的時候自動調用,方法是你主動調用的
Ⅵ php里函數、方法、類各是指什麼,都混了……
通俗點說
函數就是一段代碼的集合,因為經常用到,就做成函數方便調用,費事每次都寫相同的代碼。
類就就是一個大工具箱,不同的類就是不同的工具箱。比如電工用的工具箱,裡面就包括電筆,膠布,線槽,剪刀等。 這個工具箱就是類,電筆膠布等就是它的方法。
工具箱的集合就叫作庫,理解成為一個存工具的倉庫。
所謂的框架,就是一個工程隊,什麼人都有,什麼工具都有。。。
Ⅶ PHP 函數和類的區別是什麼
類要有關鍵字class聲明,類有屬性和方法構成,可以實例化出對象,類可以被繼承,一般類是面向對象編程時用到;函數沒有屬性,一般用在面向過程,未解決某一特定問題而寫的。
Ⅷ Php類和函數有什麼差別
樓主得去多了解一下面向對象。舉個例子給你聽吧比如你要做個電子商務網站,那肯定會有購物車功能。那我們先建立一個購物車的類,購物車class,那光一個類沒什麼用啊。那我們要建立很多方法和變數,比如商品加入購物車function,修改數量function,取消已經添加商品function。這樣一個購物車的類就好了,接下來你要用這些個方法你就可以實例化這個類new 購物車class;裡面的方法就能隨便用,當然為了安全我們可以封裝這些方法或變數可以用私有化來修飾這些方法和變數。面對對象的編程模式更有利於維護及2次開發代碼
Ⅸ PHP中魔術變數__METHOD__與__FUNCTION__的區別
本文實例講述了PHP中魔術變數__METHOD__與__FUNCTION__的區別,分享給大家供大家參考。具體分析如下:
__METHOD__類的方法名(PHP
5.0.0
新加)。返回該方法被定義時的名字(區分大小寫)。
__FUNCTION__函數名稱(PHP
4.3.0
新加)。自
PHP
5
起本常量返回該函數被定義時的名字(區分大小寫)。在
PHP
4
中該值總是小寫字母的。
文檔解釋都是說返回函數(方法)的名字。區別在於:
__FUNCTION__只是返回方法的名字;
__METHOD__返回類的名字和方法的名字。
<?php
class
Test{
public
function
doit(){
echo
__FUNCTION__;
}
public
function
doitAgain(){
echo
__METHOD__;
}
}
$obj
=
new
Test();
$obj->doit();
echo
'<br>';
$obj->doitAgain();
?>
輸出結果為:
doit
Test::doitAgain
希望本文所述對大家的PHP程序設計有所幫助。
Ⅹ 函數和方法的區別 thinkphp
單獨的function a(){}
是函數。
在類里的函數,叫做方法。