PHP网站开发必用知识点总结,函数一览,开发必背魔术方法__construct() 当实例化一个对象的时候,这个对象的这个方法首先被调用。
__destruct() 当删除一个对象或对象操作终止的时候,调用该方法。
__get() 当试图读取一个并不存在的属性的时候被调用。
__set() 当试图向一个并不存在的属性写入值的时候被调用。
__call() 当试图调用一个对象并不存在的方法时,调用该方法。
__toString() 当打印一个对象的时候被调用__clone() 当对象被克隆时,被调用__isset()__unset()__autoload($classname)__sleep()__wakeup()系统常量__FILE__ 当前文件名__LINE__ 当前行数__FUNCTION__ 当前函数名__CLASS__ 当前类名__METHOD__ 当前对象的方法名PHP_OS 当前系统PHP_VERSION php版本DIRECTORY_SEPARATOR 根据系统决定目录的分隔符 /\PATH_SEPARATOR 根据系统决定环境变量的目录列表分隔符 ; :E_ERROR 1E_WARNING 2E_PARSE 4E_NOTICE 8M_PI$_SERVER$_ENV 执行环境提交至脚本的变量$_GET$_POST$_REQUEST$_FILES$_COOKIE$_SESSION$_GLOBALS输出echo .1f, "") 按指定字符切割string implode(".", $array) 别名:join 把数组值数据按指定字符连接起来array str_split("eeeeeeee",4) 按长度切割字符串array split("-","fff-ff-f") 按指定字符切割int strlen('ffffffff') 取字符长度string substr ( string $string , int $start [, int $length ] )substr($a,-2, 2) 截取字符int substr_count($text, 'is') 字符串出现的次数string strstr($text, 'h') 第一次出现h后的字符串 d+$/", array,11,) 匹配数据array preg_split ("/[\s,]+/", "hypertext language,programming"); 按指定的字符切割array pathinfo(string path [, int options]) 返回文件路径的信息string basename ( string path [, string suffix] ) 返回路径中的文件名部分string dirname ( string path ) $_SERVER[PHP_SELF] 返回路径中的目录部分string nl2br("foo isn't\n bar") "foo isn't<br> bar" 把换行转成<br>string chr ( int ascii ) *mixed str_word_count ( string string [, int format [, string charlist]] ) string str_shuffle ('abc') 打乱字符串顺序string strrev($str) * 翻转一个字符串string strtolower($str) * 将字符串 $str 的字符全部转换为小写的string strtoupper($str) * 将字符串 $str 的字符全部转换为大写的string ucfirst ($str) * 将字符串 $str 的第一个单词的首字母变为大写。
string ucwords($str) * 将字符串 $str 的每个单词的首字母变为大写。
string addslashes("I'm") I\'m 使用反斜线引用字符串这些字符是单引号(')、双引号(")、反斜线(\)与 NUL(NULL 字符)string stripcslashes("I\'m") I'm 将用addslashes()函数处理后的字符串返回原样strip_tags("<p>tt</p>", '<p>') 去除html、xml、php标记,第二个参数用来保留标记string urlencode(string str)string urldecode(string str)string htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES) 转换特殊字符为HTML字符编码<a href='test'>Test</a>ENT_COMPAT –对双引号进行编码,不对单引号进行编码ENT_QUOTES –对单引号和双引号进行编码ENT_NOQUOTES –不对单引号或双引号进行编码string htmlentities('<p>ff</p>', ENT_QUOTES) 转换特殊字符为HTML字符编码,中文会转成乱码数组处理int count( mixed var [, int mode] ) 别名:sizeof() 取数组长度string implode(".", $array) 别名:join 把数组值数据按指定字符连接起来array explode(".", "") 按指定字符切割array range(0, 6, 2) 返回数组 array(0,2,4,6) 第一个参数为起使数,第二个参数为结束数,第三个参数为数据增加步长int array_push($a, "3", 1) 把'3'、'1'压入$a,将一个或多个单元压入数组的末尾(入栈),第二个参数开始就是压入的数据void unset ( mixed var [, mixed var [, ...]] )array array_pad ($a, 5, 's')用's'将数组填补到指定长度bool shuffle ( array $array ) 将数组打乱mixed array_rand ( array input [, int num_req] )从数组中随机取出一个或多个单元的索引或键名array array_count_values ( array input )统计数组中所有的值出现的次数array array_combine ( array keys, array values ) 创建一个数组,用一个数组的值作为其键名,另一个数组的值作为其值bool array_key_exists ( mixed key, array search )检查给定的键名或索引是否存在于数组中mixed array_search ( mixed needle, array haystack [, bool strict] )在数组中搜索给定的值,如果成功则返回相应的键名bool is_array ( mixed var )bool in_array ( mixed needle, array haystack [, bool strict] )检查数组中是否存在某个值number array_sum ( array array )计算数组中所有值的和array array_unique ( array array )移除数组中重复的值mixed reset ( array &array )将数组的内部指针指向第一个单元mixed current ( array &array )mixed next ( array &array )mixed prev ( array &array )mixed end ( array &array )mixed key ( array &array )array array_keys ( array input [, mixed search_value [, bool strict]] ) 返回数组中所有的键名array array_values ( array input ) 返回数组中所有的值bool print_r ( mixed expression [, bool return] )void var_dump ( mixed expression [, mixed expression [, ...]] )int array_unshift ( array &array, mixed var [, mixed ...] )在数组开头插入一个或多个单元mixed array_shift ( array &array )将数组开头的单元移出数组mixed array_pop ( array &array )将数组最后一个单元弹出(出栈)array array_splice ( array $input, int offset [, int length [, array replacement]] ) 把数组中的一部分去掉并用其它值取代array array_merge ( array array1 [, array array2 [, array ...]] )合并一个或多个数组array array_flip ( array trans )交换数组中的键和值int extract( array var_array [, int extract_type [, string prefix]] ) 从数组中将变量导入到当前的符号表array compact ( mixed varname [, mixed ...] ) 建立一个数组,包括变量名和它们的值bool sort ( array &array [, int sort_flags] )从最低到最高重新安排bool natsort($a) 用“自然排序”算法对数组排序bool rsort ( array &array [, int sort_flags] )对数组进行逆向排序(最高到最低)bool asort ( array &array [, int sort_flags] )对数组进行排序并保持索引关系bool arsort ( array &array [, int sort_flags] ) 对数组进行逆向排序并保持索引关系bool ksort ( array &array [, int sort_flags] )对数组按照键名排序bool krsort ( array &array [, int sort_flags] )对数组按照键名逆向排序array array_filter ( array input [, callback callback] ) 用回调函数过滤数组中的单元bool array_walk ( array &array, callback funcname [, mixed userdata] ) 对数组中的每个成员应用用户函数array array_map ( callback callback, array arr1 [, array ...] )将回调函数作用到给定数组的单元上array array_fill ( int start_index, int num, mixed value ) 用给定的值填充数组array_fill(5, 3, 'a')-->array(5=>'a',6=>'a',7=>'a')array array_chunk ( array input, int size [, bool preserve_keys] )将一个数组分割成多个其他isset() 变量是否存在boolean empty() 检查变量是否存在,并判断值是否为非空或非0void unset() 销毁变量header('Content-Type: text/html; charset=utf-8');method_exists($obj, $method) 判断对象的方法是否可用file_exists($file) 判断文件是否存在function_exists();class_exists($class_name);gettype();获取数据类型set_magic_quotes_runtime() 0 for off, 1 for on 当遇到反斜杆、单引号,将会自动加上一个反斜杆,保护系统和数据库的安全ini_set();安全function strReplace($str){$strResult = $str;if(!get_magic_quotes_gpc())ewsID}><{/section}><!--{section name=t loop=$data}--><tr><td><!--{$data[t].username}--></td></tr><!--{/section}--><{foreach from=$newsArray item=newsID key=k}>新闻编号:<{$}><br>新闻内容:<{$}><br><hr><{/foreach}>判断<!--{if true}-->1111<!--{else}--><!--{/if}-->时间{$|date_format:"%Y-%m-%d %H:%M:%S"}%Y年%m月%d日乱码<!--{$|date_format:"%Y年%m月%d日 %H时%M分%S秒"}-->修改插件:plugins/ $format = mb_convert_encoding($format,'gbk','utf-8');return mb_convert_encoding(strftime($format, $timestamp),'utf-8','gbk');局部不缓存html:<!--{$|date_format:"%Y-%m-%d %H:%M:%S"}--><!--{cacheless a="aaa" b="bbbb"}--><!--{$|date_format:"%Y-%m-%d %H:%M:%S"}--><!--{/cacheless}-->php:$smarty->register_block('cacheless', 'smarty_block_dynamic', false);str2;}html调用:<!--{'ff'|test:'tt'}-->php:function eee($a){return 'ffffffffffffff';}html:<!--{''|@eee}-->if语句eq相等,ne、neq不相等,gt大于gte、ge大于等于,lte、le 小于等于,not非, mod求模。