如何有效的记忆PHP内置函数
第八章 PHP内置函数

5 数学函数
min函数:求最小值 max:求最大值
5 数学函数
rand产生一个随机数,如果没有提供可选参数 min 和 max,rand() 返回 0 到 RAND_MAX 之 间的伪随机整数。例如想要 5 到 15(包括 5 和 15)之间的随机数,用 rand(5, 15)。
6 包含函数
包含函数
require(“文件名”); include(“文件名”) require _once(“文件名”) include_once(“文件名”)
require和include功能相同,只是include() 产生 一个警告,而 require() 则导致一个致命错误。 _once保证了此文件仅被包含一次。
4 日期函数
获得当前时间及设置当前日期 int time():获得当前时间 int mktime(时,分,秒,月,日,年)
4 日期函数
日期时间格式化 string date('格式字符串',时间 ) 常见格式
Y-四位的年份 m:月份(数字) d:第几天(数字) H:24小时,h:12小时 i:分数 s:秒数 z:年份中的第几天
gettype获取变量类型
2 强制类型转换
强制类型转换的语法是在要转换的变量之前加上 用括号括起来的目标类型
$foo = 10 $bar = (boolean) $foo; //整型 //布尔型
3 输出函数
echo: void echo(arg1,arg2) : print:int print(str) echo与print的区别(面试题)
共同点:功能类似,都是语言结构 不同点:
echo可以带多个参数,print只能一个 echo没有返回值,print有返回值,可以用在表达式 中
php函数知识点总结

php函数知识点总结一、函数的基本使用1.1 函数的定义在PHP中,可以使用function关键字来定义函数。
函数的基本语法如下:```phpfunction functionName($arg1, $arg2, ...) {// 函数体}```其中functionName为函数的名称,$arg1、$arg2为函数的参数,函数体为具体执行的代码块。
1.2 函数的调用定义好函数后,可以通过函数名来调用函数,传递相应的参数。
例如:```phpfunction sum($num1, $num2) {$result = $num1 + $num2;return $result;}// 调用函数echo sum(3, 5); // 输出8```1.3 函数的返回值在函数中,可以使用return语句返回一个值,函数执行到return语句时将结束执行并返回相应的值。
例如:```phpfunction sum($num1, $num2) {$result = $num1 + $num2;return $result;}```1.4 函数的参数函数可以包含零个或多个参数,参数可以是标量类型(整型、浮点型、字符串、布尔型)、数组、对象或其他函数等。
参数可以通过引用传递或值传递,通过引用传递意味着在函数内修改参数的值会影响到外部变量的值。
PHP中可以使用默认参数值来设置参数的默认值,在调用函数时如果没有给出参数,参数将使用默认值。
1.5 函数的作用域在函数内部声明的变量是局部变量,只在函数内部有效;在函数外部声明的变量是全局变量,全局变量在整个程序中都有效。
在函数内部可以使用global关键字来引用全局变量,也可以使用static关键字来定义静态变量,静态变量在函数执行完后不会被销毁,会保留其值。
二、内置函数PHP提供了大量的内置函数,用于执行常见的任务,例如字符串处理、数组处理、文件操作、数据库操作等。
内置函数可以大大提高开发效率,减少重复造轮子的工作。
php内置函数总结

第2章Apache函数152.1Apache信息获取类函数152.1.1apache_child_terminate函数:在本次请求结束后终止Apache进程15 2.1.2apache_get_modules函数:获取Apache的模块列表162.1.3apache_get_version函数:获取Apache的版本162.1.4apache_getenv函数:获取Apache的环境变量172.1.5apache_lookup_uri函数:获取特定的URL有关信息172.1.6apache_note函数:获取或设置Apache请求记录182.1.7apache_request_headers函数:获取HTTP请求的标头192.1.8apache_response_headers函数:获取所有HTTP回应标头192.1.9getallheaders函数:获取所有HTTP变数值202.2Apache配置类函数202.2.1apache_reset_timeout函数:重设Apache写操作时间212.2.2apache_setenv函数:设置Apache的环境变量212.2.3virtual函数:执行Apache的子请求222.3Apache编码类函数222.3.1ascii2ebcdic函数:将ASCII码转换为EBCDIC码222.3.2ebcdic2ascii函数:将EBCDIC码转换为ASCII码232.4小结23第3章ODBC函数243.1ODBC连接类函数253.1.1odbc_connect函数:打开一个ODBC连接253.1.2odbc_close函数:关闭一个已经打开的ODBC连接263.1.3odbc_close_all函数:关闭所有已经打开的ODBC连接273.1.4odbc_pconnect函数:打开一个持续有效的ODBC连接273.2ODBC操作类函数283.2.1odbc_commit函数:更新所有处于未决状态的操作283.2.2odbc_do函数:在打开的ODBC连接上执行SQL语句293.2.3odbc_exec函数:执行SQL语句303.2.4odbc_execute函数:执行一个预置的SQL语句303.2.5odbc_free_result函数:释放传回资料所占用的内存313.2.6odbc_prepare函数:预置SQL语句的执行323.2.7odbc_rollback函数:撤销所有处于未决状态的操作323.3ODBC信息获取类函数333.3.1odbc_columnprivileges函数:列出给定表的列和相关的权限333.3.2odbc_columns函数:列出指定表的列的名称343.3.3odbc_cursor函数:获取光标的名称353.3.4odbc_data_source函数:返回连接数据库的信息353.3.5odbc_error函数:获取最后的错误代码363.3.6odbc_errormsg函数:获取最后的错误信息363.3.7odbc_fetch_array函数:获取结果集数组373.3.8odbc_fetch_into函数:获取传回的指定列383.3.9odbc_fetch_object函数:返回结果集到对象383.3.10odbc_fetch_row函数:获取传回的一列393.3.11odbc_field_len函数:获取字段的长度403.3.12odbc_field_name函数:获取字段的名称413.3.13odbc_field_num函数:获取字段的序号413.3.14odbc_field_precision函数:获取字段的长度423.3.15odbc_field_scale函数:获取字段的浮点数423.3.16odbc_field_type函数:获取字段的资料类型433.3.17odbc_foreignkeys函数:返回特定表的外来键443.3.18odbc_gettypeinfo函数:返回数据库的类型信息443.3.19odbc_longreadlen函数:设定传回栏的最大值453.3.20odbc_num_fields函数:获取字段数目453.3.21odbc_num_rows函数:获取传回的列数目453.3.22odbc_primarykeys函数:返回列的名字作为表的主键463.3.23odbc_procedurecolumns函数:返回检索过程的参数信息463.3.24odbc_procedures函数:获取存在于特定数据源中的进程信息473.3.25odbc_result_all函数:传回HTML表格信息473.3.26odbc_result函数:获取结果数据473.3.27odbc_specialcolumns函数:返回一个表中在传送更新时可以自动更新的列48 3.3.28odbc_statistics函数:获取表的状态及其索引493.3.29odbc_tableprivileges函数:列出表格和每个表格关联的权限493.3.30odbc_tables函数:获取特定数据库上的表的名称503.4ODBC设置类函数503.4.1odbc_autocommit函数:开启或关闭自动更新503.4.2odbc_binmode函数:设定二进制的数据处理方式513.4.3odbc_next_result函数:检查下一个结果集是否可用523.4.4odbc_setoption函数:调整ODBC设定523.5小结53第4章MySQL函数544.1MySQL连接类函数544.1.1mysql_connect函数:打开一个到MySQL服务器的连接544.1.2mysql_close函数:关闭MySQL连接554.1.3mysql_pconnect函数:打开一个到MySQL服务器的持久链接564.2MySQL操作类函数574.2.1mysql_create_db函数:新建一个MySQL数据库574.2.2mysql_data_seek函数:移动内部结果的指针574.2.3mysql_db_query函数:发送一条MySQL查询584.2.4mysql_drop_db函数:删除一个MySQL数据库594.2.5mysql_escape_string函数:转义一个用来查询的字符串594.2.6mysql_free_result函数:释放结果内存604.2.7mysql_list_dbs函数:列出MySQL服务器中所有的数据库604.2.8mysql_list_fields函数:列出MySQL结果中的字段614.2.9mysql_list_processes函数:列出MySQL进程614.2.10mysql_list_tables函数:列出MySQL数据库中的表624.2.11mysql_ping函数:Ping一个服务器连接,如果没有连接则重新连接634.2.12mysql_query函数:发送一条MySQL查询634.2.13mysql_real_escape_string函数:转义SQL语句中的特殊字符644.2.14mysql_result函数:获取结果数据654.2.15mysql_select_db函数:选择MySQL数据库664.2.16mysql_unbuffered_query函数:向MySQL发送一条SQL查询,并不获取和缓存结果的行674.3MySQL信息获取类函数674.3.1mysql_affected_rows函数:获取前一次MySQL操作所影响的记录行数684.3.2mysql_client_encoding函数:获取字符集的名称684.3.3mysql_db_name函数:获取数据库名694.3.4mysql_errno函数:返回上一个MySQL操作中的错误信息的数字编码704.3.5mysql_error函数:返回上一个MySQL操作产生的文本错误信息704.3.6mysql_fetch_array函数:从结果集中获取一行作为关联数组,或数字数组,或二者都有714.3.7mysql_fetch_assoc函数:从结果集中获取一行作为关联数组724.3.8mysql_fetch_field函数:从结果集中获取列信息并作为对象返回734.3.9mysql_fetch_lengths函数:获取结果集中每个输出的长度754.3.10mysql_fetch_object函数:从结果集中获取一行作为对象764.3.11mysql_fetch_row函数:从结果集中获取一行作为枚举数组774.3.12mysql_field_flags函数:从结果集中获取字段关联的标志774.3.13mysql_field_len函数:返回指定字段的长度784.3.14mysql_field_name函数:获取结果集中指定字段的字段名794.3.15mysql_field_seek函数:将结果集中的指针设定为指定的字段偏移量804.3.16mysql_field_table函数:获取指定字段所在的表名814.3.17mysql_field_type函数:获取结果集中指定字段的类型814.3.18mysql_get_client_info函数:获取MySQL客户端信息824.3.19mysql_get_host_info函数:获取MySQL主机信息834.3.20mysql_get_proto_info函数:获取MySQL协议信息834.3.21mysql_get_server_info函数:获取MySQL服务器信息844.3.22mysql_info函数:获取最近一条查询的信息844.3.23mysql_insert_id函数:获取上一个INSERT操作产生的ID854.3.24mysql_num_fields函数:获取结果集中字段的数目864.3.25mysql_num_rows函数:获取结果集中行的数目864.3.26mysql_stat函数:获取当前系统状态874.3.27mysql_tablename函数:获取表名884.3.28mysql_thread_id函数:获取当前线程的ID884.4小结89第3篇数组字符篇第5章Arrays函数935.1数组建立类函数935.1.1array函数:新建一个数组935.1.2array_combine函数:用两个数组的值作为新数组的键与值来新建一个数组945.1.3range函数:建立一个包含指定范围单元的数组945.2数组操作类函数955.2.1array_chunk函数:将一个数组分割成多个数组955.2.2array_count_values函数:统计数组中所有的值出现的次数975.2.3array_diff_assoc函数:带索引检查计算数组的差集975.2.4array_diff_key函数:使用键名比较计算数组的差集985.2.5array_diff_uassoc函数:用回调函数做索引检查来计算数组的差集985.2.6array_diff_ukey函数:用回调函数对键名比较计算数组的差集995.2.7array_diff函数:计算数组的差集1005.2.8array_fill函数:用给定的值填充数组1005.2.9array_filter函数:用回调函数过滤数组中的单元1015.2.10array_flip函数:交换数组中的键和值1025.2.11array_intersect_assoc函数:带索引检查计算数组的交集1035.2.12array_intersect_key函数:使用键名比较计算数组的交集1035.2.13array_intersect_uassoc函数:带索引检查计算数组的交集,并用回调函数比较索引1045.2.14array_intersect_ukey函数:用回调函数比较键名来计算数组的交集1045.2.15array_intersect函数:计算数组的交集1055.2.16array_key_exists函数:检查给定的键名或索引是否存在于数组中1065.2.17array_map函数:将回调函数作用到给定数组的单元上1065.2.18array_merge_recursive函数:递归地合并一个或多个数组1075.2.19array_merge函数:合并一个或多个数组1085.2.20array_multisort函数:对多个数组或多维数组进行排序1085.2.21array_pad函数:用值将数组填补到指定长度1095.2.22array_pop函数:将数组的最后一个单元弹出1105.2.23array_push函数:将一个或多个单元压入数组的末尾1115.2.24array_rand函数:从数组中随机取出一个或多个单元1115.2.25array_reduce函数:用回调函数迭代地将数组简化为单一的值1125.2.26array_search函数:在数组中查找给定的值并返回相应的键名1135.2.27array_shift函数:移除数组开头的一个单元1145.2.28array_unique函数:移除数组中重复的值1145.2.29array_unshift函数:在数组开头插入一个或多个单元1155.2.30array_slice函数:从数组中取出一段1155.2.31array_splice函数:把数组中的一部分去掉并用其他值取代1165.2.32array_sum函数:计算数组中所有值的和1185.2.33array_uintersect_assoc函数:带索引检查计算数组的交集并用回调函数比较数据1185.2.34array_uintersect_uassoc函数:带索引检查计算数组的交集并用回调函数比较数据和索引1195.2.35array_uintersect函数:计算数组的交集并用回调函数比较数据1195.2.36array_walk_recursive函数:对数组中的每个成员递归地应用用户函数1205.2.37array_walk函数:对数组中的每个成员应用用户函数1215.2.38compact函数:用变量名和值建立一个数组1215.2.39count函数:计算数组中的单元数目或对象中的属性个数1225.2.40current函数:返回数组中的当前单元1235.2.41extract函数:从数组中将变量导入当前的符号表中1245.2.42in_array函数:查找数组中是否存在某个值1255.2.43key函数:从关联数组中获取键名1255.2.44list函数:把数组中的值赋给一些变量1265.2.45next函数:将数组中的内部指针向前移动一位1275.2.46prev函数:将数组中的内部指针倒回一位1275.2.47reset函数:将数组中的内部指针指向第一个单元1285.2.48shuffle函数:打乱一个数组1285.3数组信息获取类函数1295.3.1array_change_key_case函数:返回字符串键名全为小写或大写的数组1295.3.2array_keys函数:返回数组中所有的键名1305.3.3array_reverse函数:返回一个单元顺序相反的数组1305.3.4array_values函数:返回数组中所有的值1315.3.5each函数:返回数组中当前的键/值对并将数组指针向前移动一步1325.4数组比较类函数1325.4.1arsort函数:对数组进行逆向排序并保持索引关系1335.4.2asort函数:对数组进行排序并保持索引关系1335.4.3krsort函数:对数组按照键名逆向排序1345.4.4ksort函数:对数组按照键名排序1355.4.5natcasesort函数:用自然排序算法对数组进行不区分大小写字母的排序1355.4.6natsort函数:用自然排序算法对数组排序1365.4.7rsort函数:对数组逆向排序1375.4.8sort函数:对数组排序1375.4.9uasort函数:使用用户自定义的比较函数对数组中的值进行排序并保持索引关联1385.4.10uksort函数:使用用户自定义的比较函数对数组中的键名进行排序1395.4.11usort函数:使用用户自定义的比较函数对数组中的值进行排序1405.5小结140第6章Strings函数1426.1字符串转换类函数1426.1.1addcslashes函数:以C语言风格使用反斜线转义字符串中的字符1426.1.2addslashes函数:使用反斜线引用字符串1436.1.3chop函数:清除字符串中的连续空格1436.1.4get_html_translation_table函数:返回htmlspecialchars()函数和htmlentities()函数的转换表1446.1.5chunk_split函数:将字符串分割成小块1466.1.6hebrev函数:转换希伯来逻辑字符为可见字符1466.1.7hebrevc函数:转换希伯来语文本为可见文本,包括换行符1476.1.8html_entity_decode函数:转换HTML字符编码为字符1476.1.9htmlentities函数:转换字符为HTML字符编码1486.1.10htmlspecialchars_decode函数:转换特殊HTML字符编码为字符149 6.1.11htmlspecialchars函数:转换特殊字符为HTML字符编码1496.1.12nl2br函数:将换行字符转换成“<br>”1506.1.13quotemeta函数:加入引用符1506.1.14rtrim函数:清除字符串末尾的空白(或其他字符)1516.1.15strip_tags函数:清除HTML及PHP的标记1516.1.16stripcslashes函数:将用addslashes()函数处理后的字符串原样返回152 6.1.17stripslashes函数:清除字符串中的反斜线1526.1.18strtolower函数:将字符串中的字母全部转换为小写1536.1.19strtoupper函数:将字符串中的字母全部转换为大写1536.1.20trim函数:截取字符串首尾的空格(或其他字符)1546.2字符串操作类函数1546.2.1explode函数:将字符串按指定字符切开1546.2.2str_pad函数:用一个字符串填充另一个字符串到指定长度1556.2.3str_split函数:把字符串转化为数组1566.2.4str_shuffle函数:随机打乱字符串中的字符顺序1576.2.5str_ireplace函数:将某个子字符串替换为另一个字符串1576.2.6localeconv函数:获取当地的数字和货币信息1586.2.7ltrim函数:清除字符串左端的连续空白(或者其他字符)1596.2.8money_format函数:把数字字符串转换为货币表示形式1606.2.9nl_langinfo函数:获取语言和地区信息1606.2.10number_format函数:用千位分隔符格式化数字字符串1626.2.11parse_str函数:将字符串解析为变量1636.2.12setlocale函数:设置地区信息1636.2.13similar_text函数:计算两个字符串中相匹配的字符串数量1646.2.14str_repeat函数:重复使用指定字符串1656.2.15str_replace函数:区分大小写的字符串替换1656.2.16str_word_count函数:返回字符串中的单词数1666.2.17strcasecmp函数:对两个字符串进行比较1666.2.18strlen函数:统计字符串的长度1676.2.19strnatcmp函数:使用自然顺序演算法来对比字符串1676.2.20strrev函数:颠倒字符串1686.2.21strtok函数:切开字符串1686.2.22strtr函数:转换字符串的某些字符1696.2.23substr_count函数:计算一个字符串在另一个字符串中出现的次数170 6.2.24substr_replace函数:替换字符串中的一部分为另一个字符串1706.2.25substr函数:截取字符串1716.2.26ucfirst函数:将字符串中第一个字符改为大写1716.2.27ucwords函数:将字符串中每个单词的第一个字母改为大写1726.2.28wordwrap函数:将字符串按字符个数换行1726.3字符串查找类函数1736.3.1chr函数:将指定的序数转化为相应的ASCII码字符1736.3.2implode函数:将数组合并为字符串1736.3.3join函数:将数组转化为字符串1746.3.4crc32函数:计算一个字符串的crc32多项式1746.3.5strchr函数:返回字符串在另一个字符串中首次出现的位置到末尾的子字符串175 6.3.6strcspn函数:返回字符串中起首不符合mask的子字符串长度1756.3.7stripos函数:查找一个字符串在另一个字符串中首次出现的位置(不区分大小写) 176 6.3.8stristr函数:返回一个字符串在另一个字符串中首次出现的位置到后者末尾的子字符串(不区分大小写) 1766.3.9strripos函数:不区分大小写查找字符在字符串中首次出现的位置1776.3.10strrpos函数:查找字符在字符串中最后出现的位置1776.3.11strspn函数:返回字符串中起首符合mask的子字符串长度1786.3.12strstr函数:返回字符串中某字符串开始处至结束的字符串1786.4字符串编码类函数1786.4.1bin2hex函数:将二进制字符转化为十六进制1796.4.2convert_cyr_string函数:将字符由一种Cyrillic字符转换成另一种1796.4.3convert_uudecode函数:对用uuencode算法编码的字符串解码1806.4.4convert_uuencode函数:对字符串进行uuencode算法编码1806.4.5count_chars函数:返回字符串中所有字符的信息1806.4.6ord函数:返回一个字符的ASCII码1816.4.7quoted_printable_decode函数:将qp编码字符串转换成8 位元字串1826.4.8str_rot13函数:对一个字符串进行rot13编码1826.5字符串加密类函数1836.5.1crypt函数:将字符串用DES编码加密1836.5.2md5_file函数:计算给定文件的MD5hash1836.5.3md5函数:对一个字符串进行MD5加密1846.5.4sha1_file函数:计算给定文件的sha1hash1846.5.5sha1函数:计算字符串的sha1hash1856.6字符串输出类函数1856.6.1echo函数:输出一个或多个字符1866.6.2fprintf函数:输出格式化字符串到流1866.6.3print函数:输出格式化字符串1876.6.4printf函数:输出一个格式化的字符串1876.6.5sprintf函数:返回一个格式化的字符串到变量1886.6.6sscanf函数:按照一定格式解析输入的字符串1886.6.7vfprintf函数:输出格式化字符串到流1896.6.8vprintf函数:输出一个格式化的字符串1896.6.9vsprintf函数:输出格式化的字符串到变量1906.7字符串比较类函数1906.7.1levenshtein函数:计算两个字符串的Levenshtein距离1916.7.2metaphone函数:计算字符串的metaphone键1916.7.3soundex函数:计算字符串的soundex键1926.7.4strcoll函数:对两个字符串进行比较1936.7.5strcmp函数:比较两个字符串1936.7.6strnatcasecmp函数:用自然运算法则比较字符串(不区分大小写)1946.7.7strncasecmp函数:比较字符串的前n个字符(不区分大小写)1946.7.8strncmp函数:比较两个字符串的前n个字符1956.7.9strpbrk函数:查找字符串中的一系列字符1956.7.10strpos函数:寻找字符串中某字符最先出现的位置1966.7.11strrchr函数:查找一个字符串在另一个字符串中末次出现的位置,并返回从字符串中的这个位置起,一直到字符串结尾的子字符串1966.7.12substr_compare函数:从指定起始位置起在一定长度内比较两个字符串(二进制精确,区分大小写可选)1976.8小结197第7章Hash函数1987.1PHP中的常用Hash函数1987.1.1hash_algos函数:返回已经注册的Hash规则列表1987.1.2hash_file函数:用指定的文件内容生成一个Hash值1997.1.3hash_final函数:完成一个增加的Hash值并返回结果摘要2007.1.4hash_hmac_file函数:用指定文件和HMAC模式生成一个包含密钥的Hash值200 7.1.5hash_hmac函数:用HMAC模式生成一个包含密钥的Hash值2017.1.6hash_init函数:初始化一个增加的Hash值2017.1.7hash_update_file函数:从一个文件向一个动态的Hash值灌注数据2027.1.8hash_update_stream函数:从一个打开的数据流向一个动态的Hash值灌注数据202 7.1.9hash_update函数:向一个动态的Hash值灌注数据2037.1.10hash函数:生成一个Hash值2037.2小结204第8章正则表达式函数2058.1Perl兼容的正则表达式函数2058.1.1preg_grep函数:返回与模式匹配的数组单元2058.1.2preg_match_all函数:进行全局正则表达式匹配2068.1.3preg_match函数:进行正则表达式匹配2078.1.4preg_quote函数:转义正则表达式字符2088.1.5preg_replace_callback函数:用回调函数执行正则表达式的查找和替换2088.1.6preg_replace函数:执行正则表达式的查找和替换2098.1.7preg_split函数:用正则表达式分割字符串2098.2小结210第4篇文件目录操作篇第9章Directories函数2139.1PHP中常用的目录操作函数2139.1.1chdir函数:改变目录2139.1.2chroot函数:改变根目录2149.1.3dir函数:仿照面向对象的机制来读取一个目录2149.1.4closedir函数:关闭目录句柄2159.1.5getcwd函数:获取当前工作目录2159.1.6opendir函数:打开目录句柄2169.1.7readdir函数:从目录句柄中读取条目2169.1.8rewinddir函数:倒回目录句柄2179.1.9scandir函数:列出指定路径中的文件和目录2189.2小结219第10章FilePro函数22010.1PHP中常用的FilePro函数22010.1.1filepro_fieldcount函数:返回FilePro数据库上的表的数量220 10.1.2filepro_fieldname函数:返回表的名称22010.1.3filepro_fieldtype函数:返回表的类型22110.1.4filepro_fieldwidth函数:返回一个表的宽度22110.1.5filepro_retrieve函数:检索数据库中的数据22110.1.6filepro_rowcount函数:返回数据库的行数22210.1.7filepro函数:将读取核对地图文件并存储表的数量和信息222 10.2小结222第11章FileSystem函数22311.1文件打开关闭类函数22311.1.1fopen函数:打开本地或远程的文件22311.1.2fclose函数:关闭已打开的文件指针22411.1.3popen函数:根据指定模式打开进程文件指针22511.1.4pclose函数:关闭进程文件指针22511.2文件操作类函数22611.2.1chgrp函数:改变文件所属的组22611.2.2chmod函数:改变文件的访问模式22711.2.3chown函数:修改文件的所有者22711.2.4clearstatcache函数:清除文件状态缓存22811.2.5copy函数:复制文件22911.2.6delete函数:删除文件22911.2.7flock函数:锁定文件23011.2.8fpassthru函数:输出文件中的剩余数据23011.2.9fputcsv函数:将行数据格式化为CSV格式并写入文件231 11.2.10fputs函数:将字符串写入文件23211.2.11fread函数:读取文件内容23211.2.12fscanf函数:将文件内容格式化输出23311.2.13fseek函数:在文件中设置指针位置23411.2.14ftruncate函数:将文件截断到指定的长度23411.2.15fwrite函数:写入文件23511.2.16glob函数:查找与模式匹配的文件路径23511.2.17link函数:建立硬连接23611.2.18move_uploaded_file函数:将上传的文件移动到新位置236 11.2.19parse_ini_file函数:解析一个配置文件23711.2.20readfile函数:输出一个文件的内容23811.2.21rename函数:重命名一个文件或目录23911.2.22rewind函数:倒回文件指针23911.2.23set_file_buffer函数:设置文件缓冲区大小24011.2.24tempnam函数:在指定目录下建立临时文件24011.2.25touch函数:修改文件时间24111.2.26unlink函数:删除文件24211.3文件信息获取类函数24211.3.1fileowner函数:获取文件所有者24211.3.2fileperms函数:获取文件权限24311.3.3filesize函数:获取文件大小24311.3.4filetype函数:获取文件类型24411.3.5fstat函数:获取打开文件的统计信息24411.3.6ftell函数:返回文件指针读/写的位置24511.3.7lstat函数:返回文件或符号连接的信息24611.3.8pathinfo函数:返回文件路径信息24611.3.9realpath函数:返回规范化的文件绝对路径24711.3.10stat函数:返回文件的信息24711.4文件类型判断类函数24911.4.1is_dir函数:判断指定文件是否是目录24911.4.2is_executable函数:判断指定文件是否是可执行文件25011.4.3is_file函数:判断指定文件是否是一个正常的文件25011.4.4is_link函数:判断指定文件是否是一个符号连接25111.4.5is_readable函数:判断指定文件是否可读25111.4.6is_uploaded_file函数:判断指定文件是否是通过POST上传25211.4.7is_writable函数:判断指定文件是否可写25211.5文件目录操作类函数25311.5.1mkdir函数:建立目录25311.5.2rmdir函数:删除目录25411.5.3disk_free_space函数:返回指定目录的剩余空间25411.5.4disk_total_space函数:返回指定目录的磁盘总空间大小25511.6小结255第12章Stream函数25612.1PHP中的Stream函数25612.1.1stream_bucket_append函数:为队列添加数据25712.1.2stream_bucket_make_writeable函数:从操作的队列中返回一个数据对象258 12.1.3stream_bucket_new函数:为当前队列创建一个新的数据25812.1.4stream_bucket_prepend函数:预备数据到队列25812.1.5stream_context_create函数:创建数据流上下文25912.1.6stream_context_get_default函数:获取默认的数据流上下文26012.1.7stream_context_get_options函数:获取数据流的设置26112.1.8stream_context_set_option函数:对数据流、数据包或者上下文进行设置261 12.1.9stream_context_set_params函数:为数据流、数据包或者上下文设置参数261 12.1.10stream_copy_to_stream函数:在数据流之间进行复制操作26212.1.11stream_filter_append函数:为数据流添加过滤器26212.1.12stream_filter_prepend函数:为数据流预备添加过滤器26312.1.13stream_filter_register函数:注册一个数据流的过滤器并作为PHP类执行264 12.1.14stream_filter_remove函数:从一个数据流中移除过滤器26512.1.15stream_get_contents函数:读取数据流中的剩余数据到字符串26612.1.16stream_get_filters函数:返回已经注册的数据流过滤器列表26712.1.17stream_get_line函数:按照给定的定界符从数据流资源中获取行26712.1.18stream_get_meta_data函数:从封装协议文件指针中获取报头/元数据26812.1.19stream_get_transports函数:返回注册的Socket传输列表26912.1.20stream_get_wrappers函数:返回注册的数据流列表26912.1.21stream_register_wrapper函数:注册一个用PHP类实现的URL封装协议270 12.1.22stream_select函数:接收数据流数组并等待它们状态的改变27212.1.23stream_set_blocking函数:将一个数据流设置为堵塞或者非堵塞状态27312.1.24stream_set_timeout函数:对数据流进行超时设置27412.1.25stream_set_write_buffer函数:为数据流设置缓冲区27412.1.26stream_socket_accept函数:接受由函数stream_ socket_server()创建的Socket连接27512.1.27stream_socket_client函数:打开网络或者UNIX主机的Socket连接27612.1.28stream_socket_enable_crypto函数:为一个已经连接的Socket打开或者关闭数据加密27712.1.29stream_socket_get_name函数:获取本地或者网络Socket的名称27812.1.30stream_socket_pair函数:创建两个无区别的Socket数据流连接27812.1.31stream_socket_recvfrom函数:从Socket获取数据,不管其连接与否27912.1.32stream_socket_sendto函数:向Socket发送数据,不管其连接与否28012.1.33stream_socket_server函数:创建一个网络或者UNIX Socket服务端28112.1.34stream_wrapper_restore函数:恢复一个事先注销的数据包28112.1.35stream_wrapper_unregister函数:注销一个URL地址包28212.2小结282第5篇网络通信篇第13章Socket函数28513.1Socket连接类函数28513.1.1socket_accept函数:接受一个Socket连接28513.1.2socket_bind函数:绑定一个Socket连接28613.1.3socket_close函数:关闭Socket连接28613.1.4socket_connect函数:在Socket上初始化一个连接28613.1.5socket_create_pair函数:建立一对Socket,并存储在数组中28713.1.6Socket_create函数:建立Socket连接28913.1.7socket_listen函数:监听一个Socket连接29013.2Socket操作类函数29013.2.1socket_clear_error函数:清空Socket错误信息或者最后一个错误代码29013.2.2Socket_create_listen函数:在Socket上打开一个端口接受连接29113.2.3Socket_get_option函数:获取Socket的设置选项29213.2.4socket_getpeername函数:获取远程主机的Socket信息29313.2.5Socket_getsockname函数:获取本地主机的Socket信息29413.2.6socket_last_error函数:返回Socket最后一个错误代号29413.2.7Socket_read函数:从连接中读取设置的最大长度的字节数29513.2.8Socket_recv函数:从一个连接的Socket中接收数据29513.2.9Socket_recvfrom函数:接收数据,不管连接是否断开29713.2.10socket_select函数:查询Socket状态29713.2.11socket_send函数:发送数据29813.2.12socket_sendto函数:发送一条消息到Socket,不管连接是否断开29913.2.13socket_set_block函数:锁定Socket30013.2.14Socket_set_nonblock函数:设置不锁定状态30013.2.15socket_set_option函数:设置Socket连接选项30113.2.16socket_shutdown函数:关闭一个Socket连接30213.2.17socket_strerror函数:返回一个包含Socket错误信息的字符串30213.2.18socket_write函数:写入一个Socket30313.3小结303第14章SNMP函数30414.1PHP中的SNMP函数30414.1.1snmp_get_quick_print函数:返回UCD库中quick_print设置的当前值30414.1.2snmp_get_valueretrieval函数:返回SNMP值如何被返回的路径30514.1.3snmp_read_mib函数:读取并从分析MIB文件到动态的MIB树30514.1.4snmp_set_enum_print函数:返回所有的枚举值30614.1.5snmp_set_oid_numeric_print函数:返回所有的对象,包括它们各自的对象ID并指明30614.1.6snmp_set_quick_print函数:设置UCD SNMP库中quick_print的值30614.1.7snmp_set_valueretrieval函数:指明SNMP的值的返回路径30714.1.8snmpget函数:获取一个SNMP对象30714.1.9snmpgetnext函数:发送一个SNMP对象30814.1.10snmprealwalk函数:返回指定的所有对象,包括它们各自的对象ID30814.1.11snmpset函数:设置一个SNMP对象30814.1.12snmpwalk函数:从代理返回所有的SNMP对象30914.1.13snmpwalkoid函数:查询关于网络实体的信息树30914.2小结310第15章Session函数31115.1PHP中常用的Session函数31115.1.1session_cache_expire函数:获取或者设置当前Session的过期时间31115.1.2session_cache_limiter函数:获取或者设置当前的cache限制者31215.1.3session_commit函数:存储Session中的数据并终止Session31215.1.4session_decode函数:解密Session数据31315.1.5session_destroy函数:结束所有已经注册的Session31315.1.6session_encode函数:将当前Session会话值加密为一个字符串31415.1.7session_get_cookie_params函数:获取Session Cookie的参数31515.1.8session_id函数:获取或者设置当前的Session ID值31515.1.9session_is_registered函数:检查变量是否被注册为Session31615.1.10session_module_name函数:获取或者设置目前的Session模组31615.1.11session_name函数:获取或者设置目前的Session名称31715.1.12session_regenerate_id函数:用一个新值更新当前的Session ID31815.1.13session_register函数:注册Session为新的全局变量31815.1.14session_save_path函数:获取或者设置目前的Session保存路径31915.1.15session_set_cookie_params函数:设置Cookie的参数31915.1.16session_set_save_handler函数:设置用户级的Session存储函数32015.1.17session_start函数:初始化Session数据32115.1.18session_unregister函数:从当前Session中注销一个值32115.1.19session_unset函数:释放所有的Session变量32215.1.20session_write_close函数:向Session中写入数据并终止Session32315.2小结323第16章URL函数32416.1PHP中的URL函数32416.1.1base64_decode函数:对使用MIME base64编码的数据进行解码32416.1.2base64_encode函数:使用MIME base64对数据进行编码32516.1.3get_headers函数:获取HTTP请求头部信息32516.1.4get_meta_tags函数:从一个文件中提取所有的meta标签并返回一个数组326 16.1.5http_build_query函数:生成url-encoded之后的请求字符串32716.1.6parse_url函数:解析URL并返回其组成部分32816.1.7rawurldecode函数:对已编码的URL字符串进行解码32816.1.8rawurlencode函数:按照RFC 1738对URL进行编码32816.1.9urldecode函数:解码已编码的URL字符串32916.1.10urlencode函数:编码URL字符串32916.2小结330第17章Mail函数33117.1PHP中的Mail函数33117.1.1ezmlm_hash函数:计算EZMLM所需的散列值33117.1.2mail函数:发送邮件33217.2小结333第18章HTTP函数33418.1PHP中的HTTP函数33418.1.1header函数:发送一个原始HTTP标头33418.1.2headers_list函数:返回已发送(或准备发送) 的响应标头的列表33518.1.3headers_sent函数:检查标头是否已被发送以及在哪里被发送33518.1.4setcookie函数:发送一个Cookie信息33618.1.5setrawcookie函数:发送一个其值未经urlencode编码的Cookie33718.2小结337第19章FTP函数33819.1FTP连接类函数33819.1.1ftp_close函数:关闭一个活动的FTP连接33819.1.2ftp_connect函数:建立一个新的FTP连接33919.1.3ftp_login函数:登录FTP服务器33919.1.4ftp_ssl_connect函数:通过SSL连接FTP服务器34019.1.5ftp_quit函数:关闭一个活动的FTP连接34019.2FTP文件操作类函数34119.2.1ftp_cdup函数:切换到当前目录的父目录34119.2.2ftp_chdir函数:在FTP服务器上切换当前目录34119.2.3ftp_chmod函数:修改FTP服务器文件的访问权限34219.2.4ftp_delete函数:删除FTP服务器上的一个文件34219.2.5ftp_fget函数:从FTP服务器上下载一个文件并保存到本地一个已经打开的文件中34319.2.6ftp_fput函数:上传一个已经打开的文件到FTP服务器34419.2.7ftp_get函数:从FTP服务器上下载一个文件34419.2.8ftp_mdtm函数:返回指定文件的最后修改时间34519.2.9ftp_mkdir函数:建立新目录34619.2.10ftp_nb_continue函数:连续获取/发送文件34619.2.11ftp_nb_fget函数:下载远程FTP服务器文件34719.2.12ftp_nb_fput函数:上传文件到FTP服务器34819.2.13ftp_nb_get函数:从FTP服务器上获取文件并写入本地文件34819.2.14ftp_nb_put函数:存储一个文件至FTP服务器34919.2.15ftp_nlist函数:返回给定目录的文件列表35019.2.16ftp_put函数:上传文件到FTP服务器35019.2.17ftp_pwd函数:返回当前目录名35119.2.18ftp_rename函数:更改FTP服务器上指定的文件名35119.2.19ftp_rmdir函数:删除一个目录35219.2.20ftp_size函数:返回指定文件的大小35219.3FTP服务器访问类函数35319.3.1ftp_get_option函数:返回当前FTP连接的各种不同的选项设置35319.3.2ftp_pasv函数:设置当前FTP被动模式是否打开35419.3.3ftp_set_option函数:设置各种FTP运行时选项35419.3.4ftp_systype函数:返回远程FTP服务器的系统类型35519.4FTP命令类函数35519.4.1ftp_alloc函数:发送ALO命令到远程的FTP服务器35519.4.2ftp_exec函数:请求运行一条FTP命令35619.4.3ftp_raw函数:发送命令到FTP服务器35719.4.4ftp_rawlist函数:返回指定目录下文件的详细列表35719.4.5ftp_site函数:向服务器发送SITE命令35819.5小结358第20章Network函数35920.1主机操作类Network函数35920.1.1checkdnsrr函数:查找主机的域名记录35920.1.2dns_check_record函数:查找主机的DNS记录35920.1.3dns_get_mx函数:获取主机的MX记录36020.1.4dns_get_record函数:获取主机的DNS记录36020.1.5gethostbyaddr函数:返回主机名称36020.1.6gethostbyname函数:返回IP地址36120.1.7gethostbynamel函数:返回IP地址列表36120.1.8getmxrr函数:根据给出的域名返回MX记录36220.1.9getprotobyname函数:返回协议名对应的协议号36220.1.10getprotobynumber函数:返回协议号对应的协议名称36320.1.11getservbyname函数:获取协议名称对应的端口号36320.1.12getservbyport函数:获取端口对应的协议名称36420.2日志操作类Network函数36520.2.1closelog函数:关闭系统日志36520.2.2define_syslog_variables函数:初始化所有系统日志的内容365 20.2.3openlog函数:打开到系统日志的连接36620.2.4syslog函数:产生一个系统日志36720.3其他操作类Network函数36820.3.1debugger_off函数:禁用PHP DEBUG功能36820.3.2debugger_on函数:启用PHP DEBUG功能36820.3.3fsockopen函数:打开网络Socket连接36820.3.4inet_ntop函数:把网络IP地址转换为可识别的形式36920.3.5inet_pton函数:把可识别形式的IP地址转换为网络IP36920.3.6ip2long函数:把IP地址转换为一个整数37020.3.7long2ip函数:把一个整数转换为IP地址37020.3.8pfsockopen函数:打开网络Socket持续连接37120.4小结371第6篇图像处理篇第21章Exif函数37521.1PHP中的Exif函数37521.1.1exif_imagetype函数:判断一个图像的类型37521.1.2exif_read_data函数:从JPEG或TIFF文件中读取Exif头信息376 21.1.3exif_tagname函数:获取图像索引的头信息37721.1.4exif_thumbnail函数:获取嵌入在TIFF或JPEG图像中的缩略图377 21.1.5read_exif_data函数:从JPEG或TIFF文件中读取Exif头信息378 21.2小结378第22章Image函数37922.1PHP中的Image函数37922.1.1gd_info函数:获取当前安装的GD库的信息37922.1.2getimagesize函数:获取图像的大小38122.1.3image_type_to_extension函数:获取图像类型的文件后缀381。
PHP内置函数大全及说明

PHP内置函数⼤全及说明PHP内置函数字符串addcslashes — 为字符串⾥⾯的部分字符添加反斜线转义字符addslashes — ⽤指定的⽅式对字符串⾥⾯的字符进⾏转义bin2hex — 将⼆进制数据转换成⼗六进制表⽰chop — rtrim() 的别名函数chr — 返回⼀个字符的ASCII码chunk_split — 按⼀定的字符长度将字符串分割成⼩块convert_cyr_string — 将斯拉夫语字符转换为别的字符convert_uudecode — 解密⼀个字符串convert_uuencode — 加密⼀个字符串count_chars — 返回⼀个字符串⾥⾯的字符使⽤信息crc32 — 计算⼀个字符串的crc32多项式crypt — 单向散列加密函数echo — ⽤以显⽰⼀些内容explode — 将⼀个字符串⽤分割符转变为⼀数组形式fprintf — 按照要求对数据进⾏返回,并直接写⼊⽂档流get_html_translation_table — 返回可以转换的HTML实体hebrev — 将Hebrew编码的字符串转换为可视的⽂本hebrevc — 将Hebrew编码的字符串转换为可视的⽂本html_entity_decode — htmlentities ()函数的反函数,将HTML实体转换为字符htmlentities — 将字符串中⼀些字符转换为HTML实体htmlspecialchars_decode —htmlspecialchars()函数的反函数,将HTML实体转换为字符htmlspecialchars — 将字符串中⼀些字符转换为HTML实体implode — 将数组⽤特定的分割符转变为字符串join — 将数组转变为字符串,implode()函数的别名levenshtein — 计算两个词的差别⼤⼩localeconv — 获取数字相关的格式定义ltrim — 去除字符串左侧的空⽩或者指定的字符md5_file — 将⼀个⽂件进⾏MD5算法加密md5 — 将⼀个字符串进⾏MD5算法加密metaphone — 判断⼀个字符串的发⾳规则money_format — 按照参数对数字进⾏格式化的输出nl_langinfo — 查询语⾔和本地信息nl2br — 将字符串中的换⾏符“\n”替换成“number_format — 按照参数对数字进⾏格式化的输出ord — 将⼀个ASCII码转换为⼀个字符parse_str — 把⼀定格式的字符串转变为变量和值print — ⽤以输出⼀个单独的值printf — 按照要求对数据进⾏显⽰quoted_printable_decode — 将⼀个字符串加密为⼀个8位的⼆进制字符串quotemeta — 对若⼲个特定字符进⾏转义rtrim — 去除字符串右侧的空⽩或者指定的字符setlocale — 设置关于数字,⽇期等等的本地格式sha1_file — 将⼀个⽂件进⾏SHA1算法加密sha1 — 将⼀个字符串进⾏SHA1算法加密similar_text — ⽐较两个字符串,返回系统认为的相似字符个数soundex — 判断⼀个字符串的发⾳规则sprintf — 按照要求对数据进⾏返回,但是不输出sscanf — 可以对字符串进⾏格式化str_ireplace — 像str_replace()函数⼀样匹配和替换字符串,但是不区分⼤⼩写str_pad — 对字符串进⾏两侧的补⽩str_repeat — 对字符串进⾏重复组合str_replace — 匹配和替换字符串str_rot13 — 将字符串进⾏ROT13加密处理str_shuffle — 对⼀个字符串⾥⾯的字符进⾏随机排序str_split — 将⼀个字符串按照字符间距分割为⼀个数组strcoll – 根据本地设置对字符串进⾏⼤⼩⽐较strcspn — 返回字符连续⾮匹配长度的值strip_tags — 去除⼀个字符串⾥⾯的HTML和PHP代码stripcslashes — 反转义addcslashes()函数转义处理过的字符串stripos — 查找并返回⾸个匹配项的位置,匹配不区分⼤⼩写stripslashes — 反转义addslashes()函数转义处理过的字符串stristr — 通过⽐较返回⼀个字符串的部分,⽐较时不区分⼤⼩写strlen — 获取⼀个字符串的编码长度strnatcasecmp — 使⽤⾃然排序法对字符串进⾏⼤⼩⽐较,不区分⼤⼩写strnatcmp — 使⽤⾃然排序法对字符串进⾏⼤⼩⽐较strncasecmp — 对字符串的前N个字符进⾏⼤⼩⽐较,不区分⼤⼩写strncmp — 对字符串的前N个字符进⾏⼤⼩⽐较strpbrk — 通过⽐较返回⼀个字符串的部分strpos — 查找并返回⾸个匹配项的位置strrchr — 通过从后往前⽐较返回⼀个字符串的部分strrev — 将字符串⾥⾯的所有字母反向排列strripos — 从后往前查找并返回⾸个匹配项的位置,匹配不区分⼤⼩写strrpos – 从后往前查找并返回⾸个匹配项的位置strspn — 匹配并返回字符连续出现长度的值strstr — 通过⽐较返回⼀个字符串的部分strtok — ⽤指定的若⼲个字符来分割字符串strtolower — 将字符串转变为⼩写strtoupper –将字符串转变为⼤写strtr — 对字符串⽐较替换substr_compare — 对字符串进⾏截取后的⽐较substr_count — 计算字符串中某字符段的出现次数substr_replace — 对字符串中的部分字符进⾏替换substr — 对字符串进⾏截取trim — 去除字符串两边的空⽩或者指定的字符ucfirst — 将所给字符串的第⼀个字母转换为⼤写ucwords — 将所给字符串的每⼀个英⽂单词的第⼀个字母变成⼤写vfprintf — 按照要求对数据进⾏返回,并直接写⼊⽂档流vprintf — 按照要求对数据进⾏显⽰vsprintf — 按照要求对数据进⾏返回,但是不输出wordwrap — 按照⼀定的字符长度分割字符串数组array_walk() 函数对数组中的每个元素应⽤回调函数。
PHP函数用法详解【初始化、嵌套、内置函数等】

PHP函数⽤法详解【初始化、嵌套、内置函数等】⽬录函数的基本语法格式参数设置变量的作⽤域嵌套调⽤递归调⽤1. 静态变量变量的作⽤域2.可变函数3.回调函数4. 匿名函数字符串函数数字函数时间⽇期函数本⽂实例讲述了PHP函数⽤法。
分享给⼤家供⼤家参考,具体如下:初始函数函数:封装⼀段⽤于完成特定功能的代码。
通俗理解函数:可以完成魔⿁⼯作的代码块,就像积⽊⼀样,可以反复使⽤,在使⽤的时候,拿来即⽤。
函数定义:1)内置函数(字符串操作函数、数组操作函数)2)⾃定义函数函数的基本语法格式function 函数名([参数1.参数2,......]){函数体......}函数的定义由⼀下四部分组成:关键字functionfunction:在声明函数时必须使⽤的关键字;函数名functionName函数名:要符合PHP的标识符,且函数名是唯⼀的,不区分⼤⼩写参数[参数1,参数2…]:在外界传递给函数的值,他是可选的,多个参数之间使⽤逗号“,”分隔。
函数体函数体:函数定义的主体,专门⽤于实现特定的代码段。
返回值:需要使⽤return关键字将需要返回的数据传递给调⽤者。
参数设置对于函数来说,参数的不同设置,决定了其调⽤和使⽤⽅式⽆参函数按值传递参数PHP默认⽀持按值传递参数,按此种⽅式定义的函数,在函数内部可以睡⾐对⽤户传递的参数进⾏操作。
引⽤传参在开发中,若需要函数修改它的参数值,则需要通过函数的引⽤传递。
实现⽅式只需要在参数中前添加“&”符号即可。
设置参数默认值函数参数在设置时,还可以为其指定默认值,也就是可选参数。
当调⽤者未传递该参数时,函数将使⽤默认值进⾏操作。
当使⽤默认参数时,默认参数必须放在⾮默认参数的右侧,否则函数可能出错。
指定参数类型(弱)在PHP 7.0及以上的版本后,在⾃定义函数时,可以指定参数具体时那种数据类型当⽤户调⽤函数时,如果传递参数不是int类型。
程序传递的参数不是int类型,程序会将其强制的转换为int型后,在进⾏操作,这种⽅式称为弱类型参数设置。
PHP使用内置函数file_put_contents写入文件及追加内容的方法

PHP使用内置函数file_put_contents写入文件及追加内容的方法PHP中的file_put_contents(函数用于将一个字符串写入文件。
该函数是一种快捷的方式,可用于替代传统的打开、写入和关闭文件的过程。
file_put_contents(函数的用法如下:```phpfile_put_contents(filename, data, mode, context)```参数说明:- filename: 必需,指定要写入的文件路径。
- data: 必需,要写入文件的数据,可以是字符串、数组或者文件资源。
- mode: 可选,指定写入模式,默认为0。
mode参数可以是下列常量取值:- FILE_USE_INCLUDE_PATH: 如果设置该参数,并且filename是相对路径时,将在include路径中文件。
-FILE_APPEND:如果设置了该参数,数据会被追加到文件的末尾,而不是覆盖原有内容。
- context: 可选,指定一个PHP流上下文。
下面是使用file_put_contents(函数写入文件的示例代码:```php$file = 'example.txt';$data = 'Hello, World!';file_put_contents($file, $data);```以上代码会将字符串"Hello, World!"写入到example.txt文件中。
如果example.txt文件不存在,则会自动创建该文件。
如果文件已存在,则会覆盖原有内容。
接下来是使用文件追加模式的示例代码:```php$file = 'example.txt';$data = 'Hello, World!';file_put_contents($file, $data, FILE_APPEND);```以上代码会将字符串"Hello, World!"追加到example.txt文件的末尾。
轻松学PHP之PHP常用函数

, $second , $month , $day , ; (1)演示使用mktime()取得本地时间戳和将时
间格式为UNIX时间戳。 + 在使用mktime()的时候有一个需要注意它会 自动计算超出范围的输入的正确值,并不 会发生错误。 + (2)演示mktime()函数会自动计算越界的参数 和输入非法参数程序会出现的情况。
将十进制数转换为八进制数 将十进制数转换为十六进制数 将二进制数转换为十进制数 将十六进制数转换为十进制数 任意进制间数字的转换
+ (1)演示decbin()、decoct()、dechex()、
bindec()、hexdec()的使用方法以及输出结果。
+ 函数base_convert()可以进行任意进制间数值的
函数名 microtime ( $get_as_float ) 可选参数,默认为FALSE
+ (1)演示microtime()在无参数和参数被设置为
“TRUE”时的输出。 + (2)演示使用microtime()计算程序执行时间。
+ 数学计算在程序的运用也是非常多的,例
如找出一组数字中的最大和最小的数、正 弦、正切、余弦以及数字的四舍五入、产 生随机数这些操作,这些操作PHP都提供了 相应的函数,本节中我就来学习几个常用 的数学函数。
+ UNIX时间戳的优势就在于通用性,不会因
为国家或者地区的不同而出现不兼容的情 况。而由于它是表示秒数,虽然看起来很 头疼但是,用于计算时间差就非常方便。 + (1)演示一个人从出生到现在一共过了多长 时间。
+ PHP提供了多种获取日期和时间的函数,除
了我们前面认识的mktime()和time()之外。 还可以使用getdate()获取当前的时间信息, 使用gettimeofday()获取某一天中的具体时间。
入门函数知识点归纳总结

入门函数知识点归纳总结1. 函数的定义和调用函数是由一系列的语句组成的代码块,在引用时可以传入参数,函数可以返回一个值。
通过函数的定义和调用,可以将复杂的程序分解成更小的问题,使得程序更易于维护和理解。
函数的定义通常包括函数名、参数列表和函数体,调用函数时需要传入相应的参数。
```python# 定义一个简单的函数def add(a, b):return a + b# 调用函数result = add(2, 3)print(result) # 输出 5```在上面的代码中,我们定义了一个函数`add`,它接受两个参数`a`和`b`,并返回它们的和。
在调用函数时,我们传入了参数`2`和`3`,函数计算后返回结果`5`,并将结果打印出来。
2. 函数的参数函数的参数可以使函数更加灵活和通用,Python中的函数参数可以分为位置参数、默认参数、可变参数和关键字参数四种类型。
- 位置参数:位置参数就是按照定义时的顺序传入的参数,它们在调用时必须提供,且数量必须与定义时一致。
```pythondef greet(name, age):print(f"Hello, {name}. You are {age} years old.")greet("Alice", 25) # 输出 Hello, Alice. You are 25 years old.```- 默认参数:默认参数允许在定义函数时指定一个默认值,调用函数时如果省略这个参数,则会使用默认值。
```pythondef power(x, n=2):return x ** nprint(power(3)) # 输出 9,使用默认值 n=2print(power(3, 3)) # 输出 27,传入参数 n=3```- 可变参数:可变参数允许函数接受任意数量的参数,常用的可变参数有两种,分别是`*args`和`**kwargs`。
php笔记

1 php代码从右至左读取2(1)localhost:8080指向www文件夹(2)localhost:8080/phpinfo.php为php的系统环境变量,所有的参数都储存在这里3(1)//单行注释(2)/**/多行注释4 (1)echo 功能:在浏览器输出字符串;返回值void(2)print 功能:在浏览器输出字符串;返回值int(3)printf() 功能:在浏览器输出字符串返回值:字符串长度(4)sprintf功能:将字符串保存在内存中,使用echo在浏览器输出返回值:字符串5 在中英文切换过程中注意标点是在英文输入法下输入6 选中代码行ctrl+/(键)注释7 常量一旦被定义后就不能更改,常量要大写8 echo如果打印字符串需要加””,打印常量、变量不加。
9 php预定了很多常量,输入代码phpinfo()查看,echo打印需要加$;10 学习期间使用GBK编码,做项目采用UTF8,要改过来。
11 post 和get传输区别:post只传输不在网站处显示;get传输的同时显示在网址。
12 双引号里面可以放变量、转义字符进行解析出来13 (1) break退出循环,这个循环不再循环(2) exit退出整个程序(3) continue 退出当前本次循环继续下次循环14 写代码时注意for if等函数的{}和()与其他函数混在一起别搞错15相同名词key=键=下标=键=偏移量16当做字符串比较大小,从第一位开始比较17 for(…;…;) 分号;连接18 函数不区分大小写:Name()和nam()是同一个函数,变量区分大小写:$Name 和$name是不同变量。
19 include与require区别:include文件若不存在,出现两个警告,下面的程序可以继续运行;require文件若不存在,直接报错,接下来的程序也不能运行,推荐使用require.; incluce在用到时加载 ,require在一开始就加载20 header()作用:(1)重定向URL()21超全局变量:超全局变量是在全部作用域中始终可用的内置变量,注意:超级全局变量函数使用中括号[]而不是()22 isset()与empty()区别:isset检查变量是否存在,变量可以为空;empty()检查变量是否为空23 session存放于服务器端,一般存放1440秒,关闭浏览器即销毁,及时性(和cookie区别);cookie应用于会员登录,购物车,不存储在服务器,存在安全性隐患;session用于后台登陆,安全性高,一段时间不操作会过期24 zend studio查找代码ctrl+f25 /和\是有区别的26 文件格式jpg和jpeg的使用:牵涉到图片真实路径时jpg其余jpeg27 有数字规律的for循环没有的while循环28 类名第一个字母大写29 __construct()构造函数是类中的一个特殊函数,当使用new操作符创建一个类的实例时,构造函数将会自动调用(__construct两个下划线)30 php的public、protected、private三种访问控制模式的区别:public: 公有类型在子类中可以通过self::var调用public方法或属性,parent::method调用类方法在实例中可以能过$obj->var 来调用public类型的方法或属性.protected: 受保护类型在子类中可以通过self::var调用protected方法或属性,parent::method调用父类方法;在实例中不能通过$obj->var 来调用 protected类型的方法或属性private: 私有类型该类型的属性或方法只能在该类中使用,在该类的实例、子类中、子类的实例中都不能调用私有类型的属性和方法31 self 和parent 的区别a).在子类中常用到这两个对像。
PHP最常用函数整理,非常适合新手入门(基本函数PHP操作解读

php 基本函数库本文档包含 string 函数库、 date&time函数库、 Array 函数库、数学函数库、PDO 操作数据库函数、 PHP 操作 Mysql 函数库、文件 &目录函数库、图形图像函数库! 文档没有包含所有函数, 但对最常用的函数做了一个全面的总结, 方便复习, 用的全是大白话,易于理解,非常适合新手入门学习。
string 函数库获取字符串长度strlen($str;获取某个字符在字符串中第一次出现的位置strpos($str,某个字符 ;获取某个字符在字符串中最后一次出现的位置strrpos($str,某个字符 ;通过字符串中的某个字符,将字符串拆分成数组explode("符号 ",$str;从字符串的某个位置开始到某个位置结束截取substr($str,开始位置,结束位置 ;一个字符在字符串第一次出现的位置开始截取 (含这个字符之后的所有字符strstr($str,"某个字符 ";strchr($str,"某个字符 ";一个字符在字符串中最后一次出现的位置开始截取 (包含这个字符之后的所有字符strrchr($str,"某个字符 ";替换字符串中的字符str_replace("找谁 "," 替换成谁 "," 在哪里找 ";//替换这个字符串中的多个字符, 可以用数组的形式大写strtoupper($str;小写strtolower($str;单词首字母大写ucwords($str;字符串首字母大写ucfirst($str;字符串反转strrev($str;加密字符串md5($string;去除 HMTL 和 PHP 标签strip_tags($string;时间日期函数将时间戳转化为时间日期格式date("Y-m-d H:i:s",时间戳 ;获取当前日期时间戳 (;time(;将时间日期格式转化为时间戳strtotime("时间日期格式字符串 (或者是如:’ -1days(前一天’ |+1days(后一天 ";获取程序执行时间,在程序开始的地方 :$t1=microtime(;在结束地方 :$t2=microtime(;获得的时间 $t=$t2-$t1;//microtime(->获取当前时间戳的毫秒数数组函数获取数组的长度count($arr;获取数组中的某个值$arr['下标 '];判断 $val是否是数组 $array中的值,如果是,返回这个值得下标 (通过下标可以获得该值 , 否则返回 falsearray_search($val,$array;array_in($val,$array;判断数组下标 key 是否存在于数组 $arr中,存在则返回 true, 否则返回 false;array_key_exists($key,$arr;一个数组 $arr1中的值附加在前一个数组 $arr2的后面,返回合并成的一个新数组array_merge($arr2,$arr1;将数组转化为字符串implode("连接符 ",$array;向数组头部追加元素,返回数组的新长度array_unshift($val;向数组尾部追加元素,返回数组的新长度array_push($val;向数组尾部删除元素,原数组改变,且返回删除的元素array_pop($arr;向数组头部删除元素 , 原数组改变,且返回删除的元素array_shift($arr;将原数组中的值按相反顺序输出, 并且原来的下标重新产生, 如果要保留下标, 可在第二个参数后加上 truearray_reverse($array[,TRUE];移除数组 $arr中的重复的值array_unique($arr;删除数组中的某个元素unset($arr[$key];将 $arr内部指针移动到最后一个,并返回最后一个的值。
php常用的包含文件的操作函数

php常用的包含文件的操作函数在PHP中,可以使用以下函数操作文件的包含:1. include:包含并运行指定文件。
如果指定的文件不存在,将会发出一个警告,并继续执行后续代码。
2. include_once:与include函数类似,但只会包含一次指定文件。
如果文件已经被包含过,则不会再次包含。
3. require:类似于include函数,但如果指定的文件不存在,将会发出一个致命错误,并终止后续代码的执行。
4. require_once:与require函数类似,但只会包含一次指定文件。
如果文件已经被包含过,则不会再次包含。
5. fopen:打开一个文件,并返回一个用于读写文件的文件指针。
可以指定多种模式来进行读写操作,如只读、只写、追加等。
6. fclose:关闭一个已打开的文件,释放文件指针所占用的资源。
7. fread:从已打开的文件中读取指定长度的内容,并返回读取到的内容。
8. fwrite:向已打开的文件中写入内容。
9. file_get_contents:将整个文件读取为一个字符串,并返回该字符串。
10. file_put_contents:将指定的字符串写入到文件中。
11. fgets:从已打开的文件中读取一行内容,并返回该行内容。
12. fgetcsv:从已打开的CSV文件中读取一行内容,并返回一个包含该行所包含值的数组。
13. opendir:打开一个指定目录,并返回一个用于读取目录内容的句柄。
14. readdir:读取目录句柄中的下一个条目,并返回其文件名或目录名。
15. glob:返回与指定模式匹配的文件路径的数组。
可以用来查找指定目录下的文件。
这些函数提供了对文件的包含、打开、读写等操作。
使用它们可以方便地处理文件相关的任务,如文件的读取、写入、遍历目录等。
在实际应用中,根据具体的需求选择合适的函数进行操作,可以提高代码的效率和可维护性。
function记忆方法

function记忆方法Function记忆方法Function记忆方法是一种通过创造联结,帮助我们更有效地记忆信息的技巧。
在日常生活中,我们需要记忆各种各样的信息,包括电话号码、密码、学习材料等等。
然而,由于人类的大脑容量有限,我们很容易忘记这些信息。
因此,掌握一种有效的记忆方法是非常重要的。
Function记忆方法的核心思想是将需要记忆的信息与已经熟知的信息进行联结。
通过将新信息与旧信息关联起来,我们可以更容易地回忆起这些信息。
以下将介绍几种常用的Function记忆方法。
关键词联想法是一种常见的Function记忆方法。
它通过将需要记忆的关键词与一些容易联想的词语或图像进行关联,从而提高记忆效果。
例如,要记忆一位名叫“张三”的电话号码,我们可以将“张三”与数字“3”进行关联,因为“三”是“张三”的谐音。
这样,每次我们想起数字“3”时,就会自然而然地联想到“张三”的电话号码。
故事编排法也是一种常用的Function记忆方法。
它通过将需要记忆的信息编排成一个故事,从而帮助我们更好地记忆。
故事编排法的关键是将信息串联起来,并且赋予故事情节以趣味性和逻辑性。
例如,要记忆一个长长的数字序列,我们可以将每个数字与一个具体的场景或人物联系起来,然后将这些场景或人物编排成一个有趣的故事。
这样,每次我们回忆起故事情节时,就能够顺利地回忆起数字序列。
图像联想法也是一种常见的Function记忆方法。
它通过将需要记忆的信息转化为图像,从而提高记忆效果。
人类大脑对于图像的处理能力是非常强大的,因此将信息转化为图像可以更容易地记忆。
例如,要记忆一个复杂的概念或定义,我们可以将其转化为一个具体的图像,并且将图像与该概念或定义进行联想。
这样,每次我们想起这个图像时,就能够迅速回忆起相应的概念或定义。
分组法也是一种常用的Function记忆方法。
它通过将需要记忆的信息进行分组,从而提高记忆效果。
人类大脑对于有组织的信息的处理能力更强,因此将信息进行分组可以帮助我们更好地记忆。
函数必背知识点总结

函数必背知识点总结一、函数的定义与调用1. 函数的定义:函数是一段可重复使用的代码块,可以接受输入参数并返回值。
通常用来实现特定的功能。
2. 函数的调用:通过函数名和参数列表来调用函数,格式为`函数名(参数列表)`。
二、函数的参数与返回值1. 形参与实参:函数定义时的参数称为形参,调用函数时传入的参数称为实参。
2. 参数的传递方式:包括传值调用、传址调用和传引用调用。
3. 返回值:函数可以返回一个值,也可以不返回值。
三、函数的语法1. 函数声明:使用`def`关键字进行函数声明,后接函数名和参数列表。
2. 函数体:使用冒号`:`和缩进来定义函数体。
3. 返回语句:使用`return`关键字来返回函数的值。
4. 默认参数:在定义函数时可以设置参数的默认值,调用函数时可以不传入值。
5. 变长参数:使用`*args`和`**kwargs`来定义接受不定数量参数的函数。
6. 匿名函数:使用`lambda`关键字定义一个匿名函数。
7. 递归函数:函数自身调用自身的函数称为递归函数。
四、函数的作用域1. 局部变量:在函数内部声明的变量称为局部变量,只在函数内部有效。
2. 全局变量:在函数外部声明的变量称为全局变量,可以在整个程序中访问。
五、高级函数1. 高阶函数:可以接受函数作为参数或者返回一个函数的函数称为高阶函数。
2. map函数:对可迭代对象中的每个元素应用指定的函数。
3. filter函数:对可迭代对象中的元素进行过滤,只保留满足条件的元素。
4. reduce函数:对可迭代对象中的元素进行累积运算。
六、闭包与装饰器1. 闭包:函数内部定义的函数,并返回这个内部函数的结构称为闭包。
2. 装饰器:是一个返回函数的高阶函数,自动把装饰的函数作为参数传递到装饰器函数中。
七、异常处理1. try-except语句:使用`try`和`except`关键字捕获和处理异常。
2. 异常的类型:包括`NameError`、`TypeError`、`ValueError`等不同类型的异常。
PHP常用基础函数汇总(PHP笔面试复习必备)

PHP常⽤基础函数汇总(PHP笔⾯试复习必备)PHP常⽤基础函数汇总(PHP笔⾯试复习必备)string函数库int strlen(string $str):返回给定字符串的长度int strpos(string $str1,string $str2):计算$str2在$str1中⾸次出现的位置string strstr(string $str1,string $str2):返回$str1中第⼀个$str2开始到最后的字符串(包含$str2),别名strchr()string stristr:strstr()函数忽略⼤⼩写的版本int strrpos(string $str1,string $str2):计算$str2在$str1中最后⼀次出现的位置string strrchr(string $str1,string $str2):返回$str1中最后⼀个$str2开始到最后的字符串(包含$str2)array explode(string $delimiter,string $str):将$str以$delimiter为拆分标准拆分成多个字符串,并以⼀个数组返回string implode(string $glue,array $arr):将$arr中的每个元素⽤$glue连接起来string substr(string $str,int $start,[int $len]):返回$str中$start位置开始的长度为$len的字符串,如果$len没有,则返回余下所有string/array str_replace(string/array $search,string/array $replace,string/array $subject[,int &$count]):返回值类型取决于$subject类型,⽤$replace替换$subject中的$searchstring strtoupper(string $str):将$str中的字母转换成⼤写string strtolower(string $str):将$str中的字母转化成⼩写string ucwords(string $str):将$str中的单词⾸字母⼤写string ucfirst(string $str):将$str中的⾸字母⼤写string strrev(string $str):将$str反转string md5(string $str):计算$str的md5散列值,即加密string sha1(string $str):计算$str的sha1散列值,即加密string strip_tags(string $str):去除$str中html和php标签,很有⽤string rtrim(string $str[,string $character_mask='\t\n\r\0\x0B']):删除$str末端的空⽩字符,通过第⼆个参数还可以指定删除某些字符string trim(string $str[,string $character_mask]='\t\n\r\0\x0B'):删除$str⾸尾端的空⽩字符,通过第⼆个参数还可以指定删除某些字符⽇期时间函数库int time():返回当前的Unix时间戳(格林威治时间1970-01-01 00:00:00到当前时间的秒数)string date(string $format[,int $timestamp=time()]):按照$format格式将时间戳转化成字符串时间,通常格式是$format='Y-m-d H:i:s' int strtotime(string $str[,int now=time()]):将任意英⽂格式的字符串时间转变成时间戳string/float microtime([bool $get_as_float]):返回当前时间的Unix时间戳和微秒数,没有$get_as_float参数,则返回string '时间戳部分微秒数部分',可以通过explode()函数分开进⾏计算时间戳部分和微秒数部分;如果有$get_as_float参数且为true,则返回float 时间戳.微秒数,则直接相减即可array函数库int count(array/object $var[,int $mode=COUNT_NORMAL]):获取数组的长度或对象的属性个数,如果$mode为COUNT_RECURSIVE 或1,则可以递归计算多维数组的元素个数int/string array_search(mixed $needle,array $haystack[,bool $strict=false]):返回值类型取决于查找的数组$haystack是索引数组还是关联数组。
趣味背诵函数知识点总结

趣味背诵函数知识点总结1. 函数的定义和调用函数的定义使用关键字def,后面跟着函数名和参数列表,然后是函数体。
函数的调用就是使用函数名和参数列表来调用已定义的函数。
有趣的是,你可以定义一个函数来调用另一个函数,这样的嵌套调用能够让你写出更复杂的程序。
2. 函数的返回值函数可以有返回值,用关键字return来表示。
有趣的是,你可以在函数中使用return返回多个值,这样可以让函数返回多个结果,非常灵活。
3. 函数的参数函数可以有默认参数和可变参数。
有趣的是,默认参数可以减少函数的调用次数,而可变参数可以接受不同数量的参数,非常方便。
另外,你还可以使用关键字参数来指定参数的传递顺序,这样可以使函数调用更加清晰。
4. 匿名函数Python中有一个特殊的lambda关键字,它可以用来创建匿名函数。
有趣的是,在一些简单的情况下,使用匿名函数可以让代码更加简洁,如在排序或过滤列表的时候。
5. 函数的装饰器装饰器是一种特殊的函数,它可以用来修改其他函数的行为。
有趣的是,装饰器可以在不修改函数定义的情况下,给函数增加新的功能,比如日志、性能分析等。
6. 递归函数递归函数是一种特殊的函数,它可以调用自身。
有趣的是,递归函数可以解决一些复杂的问题,比如计算阶乘、斐波那契数列等。
7. 闭包闭包是一种特殊的函数,它可以保存函数的内部状态。
有趣的是,闭包可以让你在函数外部访问函数内部的变量,这种特性非常有用。
8. 装饰器和闭包的结合有趣的是,装饰器和闭包可以结合使用,这样可以让你写出更加复杂的程序。
比如可以使用闭包保存装饰器的状态,这样可以实现一些特殊的功能。
9. 生成器函数生成器函数是一种特殊的函数,它可以用来生成一系列的值。
有趣的是,生成器函数可以节省内存空间,因为它不需要一次性将所有值都存储在内存中。
10. 协程协程是一种特殊的函数,它可以在一个线程中实现多个任务的并发执行。
有趣的是,协程可以让你写出更加高效的程序,因为它可以避免线程切换的开销。
PHP中的ini_set函数介绍

PHP中的ini_set函数介绍ini_set(是PHP中的一个内置函数,用于在运行时更改PHP配置选项的值。
它允许开发人员在不需要直接修改php.ini文件的情况下动态地更改PHP的设置。
这对于调试代码、解决错误和优化性能非常有用。
ini_set(函数的语法如下:bool ini_set ( string $varname , string $newvalue )其中,$varname是要更改的配置选项的名称,$newvalue是要为配置选项设置的新值。
函数返回一个布尔值,表示是否成功更改了配置选项的值。
ini_set(函数具有以下特点和用途:1. 动态配置选项:ini_set(函数允许在代码中动态更改PHP配置选项的值。
这样,您可以根据需要调整脚本的行为,而无需重启服务器或修改php.ini文件。
2. 错误处理:使用ini_set(函数可以在代码中处理错误。
例如,您可以使用"error_reporting"配置选项将错误报告级别设置为E_ALL,以便在开发环境中查看所有类型的错误。
3. 调试代码:通过更改"display_errors"配置选项,您可以在代码中显示错误消息和警告。
这对于调试代码和查找潜在的问题非常有用。
5. 性能优化:有些PHP配置选项可以影响脚本的性能。
ini_set(函数可以用来调整这些选项的值,以优化和提高脚本的执行速度。
需要注意的是,ini_set(函数的更改只在当前脚本执行期间有效,并且仅能修改PHP配置选项的可更改范围。
有些配置选项是只读的,不能通过ini_set(函数更改。
此外,一些服务器可能限制了可配置选项的范围,因此不能直接使用ini_set(更改一些配置选项的值。
以下是一些常见的使用场景和示例:1.调整错误报告级别:ini_set("error_reporting", "E_ALL");该示例将错误报告级别设置为显示所有类型的错误,用于调试和开发阶段。
PHP内置加密函数详解

PHP内置加密函数详解Md5()加密算法⽅式: 单向加密语法: md5(string $str [, bool $raw_output = false])$str:原始字符串$raw_output:如果可选的raw_output被设置为true, 那么md5报⽂摘要将以16字节长度的原始⼆进制格式返回. 返回以32位字符⼗六进制数字形式返回散列值md5⼆次加密:md5(md5($string, true))Crypt()加密算法⽅式: 单向加密语法: string crypt(string $str[, string $salt]) , 返回⼀个基于标准UNIX DES算法或系统上其它可⽤的替代算法的三列字符串$str: 需要加密的明⽂$salt: 加密时的⼲扰串,是编码更安全注意: 如果加密时没有加上这个$salt参数, 将随机⽣成⼀个⼲扰串, 否则刷新加密秘⽂不变算法常量:[CRYPT_SALT_LENGTH]默认的加密长度。
使⽤标准的 DES 加密,长度为 2[CRYPT_STD_DES]基于标准 DES 算法的散列使⽤ "./0-9A-Za-z" 字符中的两个字符作为盐值。
在盐值中使⽤⾮法的字符将导致 crypt() 失败。
[CRYPT_EXT_DES]扩展的基于 DES 算法的散列。
其盐值为 9 个字符的字符串,由 1 个下划线后⾯跟着 4 字节循环次数和 4 字节盐值组成。
它们被编码成可打印字符,每个字符 6 位,有效位最少的优先。
0 到 63 被编码为 "./0-9A-Za-z"。
在盐值中使⽤⾮法的字符将导致crypt() 失败。
[CRYPT_MD5]MD5 散列使⽤⼀个以 $1$ 开始的 12 字符的字符串盐值。
[CRYPT_BLOWFISH]Blowfish 算法使⽤如下盐值:“$2a$”,⼀个两位 cost 参数,“$” 以及 64 位由 “./0-9A-Za-z” 中的字符组合⽽成的字符串。
php中对内置函数json_encode和json_decode的异常处理

php中对内置函数json_encode和json_decode的异常处理在php中,json_encode和json_decode是很常⽤的函数,具体⽤法可以查看相关⽂档,这⾥主要说⼀下错误处理。
平时我们在使⽤这两个⽅法的时候可能没怎么注意错误处理,有时候如果传⼊的参数格式不正确就会导致报错了。
下⾯是错误处理的⽅式:json_last_error — 返回最后发⽣的错误,如果有,返回 JSON 编码解码时最后发⽣的错误。
int json_last_error ( void )常量含义可⽤性JSON_ERROR_NONE没有错误发⽣JSON_ERROR_DEPTH到达了最⼤堆栈深度JSON_ERROR_STATE_MISMATCH⽆效或异常的 JSONJSON_ERROR_CTRL_CHAR控制字符错误,可能是编码不对JSON_ERROR_SYNTAX语法错误JSON_ERROR_UTF8异常的 UTF-8 字符,也许是因为不正确的编码。
PHP 5.3.3 JSON_ERROR_RECURSION One or more recursive references in the value to be encoded PHP 5.5.0 JSON_ERROR_INF_OR_NAN One or more NAN or INF values in the value to be encoded PHP 5.5.0 JSON_ERROR_UNSUPPORTED_TYPE指定的类型,值⽆法编码。
PHP 5.5.0 JSON_ERROR_INVALID_PROPERTY_NAME指定的属性名⽆法编码。
PHP 7.0.0 JSON_ERROR_UTF16畸形的 UTF-16 字符,可能因为字符编码不正确。
PHP 7.0.0<?php// ⼀个有效的 json 字符串$json[] = '{"Organization": "PHP Documentation Team"}';// ⼀个⽆效的 json 字符串会导致⼀个语法错误,在这个例⼦⾥我们使⽤ ' 代替了 " 作为引号$json[] = "{'Organization': 'PHP Documentation Team'}";foreach ($json as $string) {echo 'Decoding: ' . $string;json_decode($string);switch (json_last_error()) {case JSON_ERROR_NONE:echo ' - No errors';break;case JSON_ERROR_DEPTH:echo ' - Maximum stack depth exceeded';break;case JSON_ERROR_STATE_MISMATCH:echo ' - Underflow or the modes mismatch';break;case JSON_ERROR_CTRL_CHAR:echo ' - Unexpected control character found';break;case JSON_ERROR_SYNTAX:echo ' - Syntax error, malformed JSON';break;case JSON_ERROR_UTF8:echo ' - Malformed UTF-8 characters, possibly incorrectly encoded';break;default:echo ' - Unknown error';break;}echo PHP_EOL;}到此这篇关于php中对内置函数json_encode和json_decode的异常处理的⽂章就介绍到这了,更多相关php处理json_encode和json_decode异常内容请搜索以前的⽂章或继续浏览下⾯的相关⽂章希望⼤家以后多多⽀持!。
php常用系统函数方法

php常用系统函数方法PHP的功能越来越强大,里面有着非常丰富的内置函数。
下面是小编为大家整理的php常用系统函数方法,欢迎参考~字符串函数strlen:获取字符串长度,字节长度substr:字符串截取,获取字符串(按照字节进行截取)strchr:与substr相似,从指定位置截取一直到最后strrchr(获取文件后缀名):与strchr一样,只是从右边开始查找字符strtolower:所有的字符都小写(针对英文字母)strtoupper:所有的字符都大写strrev:字符串反转(只能反转英文:英文存储只有一个字节),按照字节进行反转strpos:从字符串中找对应字符出现的位置(数字下标),从最左边开始找strrpos:与strpos一样,只是从字符串的右边开始找trim:去掉函数两边的字符,默认是空格时间日期函数time:得到当前时间的时间戳(整型:从格林威治时间1970年explode:*,将一个字符串按照某个指定的规则(通常是特殊字符),将数组分成多个段,每一段都当做一个数组的元素,返回一个索引数组implode:粘合,将一个数组内部的所有元素按照某个指定的规则(特殊字符),将所有的元素拼接成一个字符串array_merge:合并,指的是将两个数组中的元素进行累计。
如果后面的数组与前面的数组有下标(键名:关联)相同的,那么后面的元素的值会覆盖前面的;如果是索引的相同下标,会自动的修改下标叠加到前面的数组里。
数据结构模拟函数array_shift:从数组的前面*出元素,得到元素的值array_pop:从数组的后面*出元素,获得元素的值array_unshift:从数组的前面压入元素,得到当前数组元素的个数array_push:从数组的后面压入元素,得到当前数组元素的个数判断变量is_bool:判断是否是布尔类型is_float:判断浮点型is_integer:判断整型is_object:判断对象is_array:判断数组is_string:判断字符串is_resource:判断资源is_scalar:scalar是标量的,判断是基本数据类型:整型,浮点型,布尔型和字符串型is_null:是否为空is_numeric:判断数字或者纯数字组成的字符串gettype:获得数据类型settype:改变数据类型文件*作函数opendir(路径):打开一个路径资源(将路径内部的所有数据读入到内存)readdir(路径资源):从文件夹资源中读取当前资源指针所指向的文件的名字,指针会向下移动一位closedir(资源):释放对应的文件资源scandir(路径):读取一个路径内部的所有文件名,返回一个数组,数组的每一个元素都是文件名。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
希望你不要成为我这种人……
本人初二学生一名,多多指教!=-=
*****************************************
多做项目,多用就记住了。光死记硬背是不可取的,要实际运用。要不然还是算不会用
另外,比起边开刀边查手册的医生。我更加愿意相信,跟护士一边谈笑风生一边开刀的医生。
所以,我觉得我有必要记忆这些函数。
解释一下:
1.我说的记忆不是死记住,而是熟练的运用。
2.我把时间花在记忆上,不代表我不花时间在数据结构、算法等其他方面。
*****************************************
为了一些目的,我去修改PHP,从此我的PHP之旅开始,遇到不会修改的就。 现在可以写一点东西了。
CSS当初我很怕的,现在也能写写东西。
多实践,你就会有真知。
PS:我脑子也很笨的,现在我正正规规按照流程去网上看教程(比如W3School)我都要拿一本笔记本的,以后查起来会快很多,脑中印象也深刻。
常见的数组处理20个左右,类型判断/转换,字符串,日期各5~10个左右差不多够了,50个左右的函数足以覆盖7成需求,100个估计能覆盖9成
更重要的是多用,查手册查完以后要有个印象,查strlen的用法不要紧,查完记住就好,date的格式不用全记,常见的YmdHis记得就好。 优秀程序员不是不查手册,而是同一页手册不重复查
*****************************************
我也想全部都记住,后来发现用的语言多了完全做不到。这时候你需要一个Dash或者Zeal这样好用的文档浏览器,配合上快速启动工具,这样应该更适合。
*****************************************
多用吧 其实没必要记住全部的 记住经常用的内置函数就已经不错了 很多内置函数在实际开发中用不到吧?
*****************************************
**************************************
BTW:半个月前我也想熟练运用windows API所有函数,后来我发现高估自己智商了
*****************************************
项目做多了,记得也熟练了。然后,在不明白的google,问大牛,就行了。
*****************************************
1.划分类别,记住常用的函数,其他有时间就看看
2.对常用的函数,在不同场景,加以应用和思考,想忘掉也难
3.看手册,看手册,在应用,思考,总结
*****************************************
多实践吧。当初我碰CSS,那个苦,PHP,那个苦,JavaScript,那个苦。
*****************************************
一款好的ide,比如PHPstorm写项目的话,实际上并不需要你记住函数的准确名字。我记住很多的函数只是一个大概,要我全部拼写出来可能很难吧,但是你让我对一个字符串做正在匹配,我可以很快想到 preg..,然后输入IDE会自动列出一些函数,这时候我就能确定是哪一个了。
我刚学编程那会,天天在网上看到什么高手跟菜鸟的10个区别等文章。比如高手用记事本也能编程或者高手都是记事本编程的。现在发觉真的非常扯淡。
技术最终的目的就是做出产品。只要达到这个目的,啥法子都行,高手和菜鸟已经无所谓了。你做你的高手,我做我的产品,我的产品赚到钱了,你说我菜鸟我也没时间反驳你。
其實樓主已經回答了自己的問題,記住不是死記而是熟練運用。
如何有效地熟練運用 PHP 内置函数?
常用的沒問題
不常用的沒必要
在這一對「記憶」的定義之下,這個問題根本就不是問題。
*****************************************
其实别的编程语言也一样,比如C语言编windows程序用到的API有两千多个,你总不会都去记住这些函数吧?就算都记住了,要是我有天想学php,是把windows API函数忘掉再学php函数呢,还是既记住winsows API,又记住php函数?我想优秀程序员也做不到这点.我目前的想法是:能把目前的程序编完,实现好功能就行,也不需要碰到一个函数就牢牢记住,用多了自然就熟了.
关于记住每一个函数的参数,我想这个也没有太大的必要,只要大概记得它能做的事情就行了,因为IDE可以辅助你做这些事情。
*****************************************
不需要
知道一堆函數卻不會用纔不優雅呢
查手冊不低級,只知道查手冊纔低級
如何有效的记忆PHP内置函数?
PHP内置函数有上千个,该如何有效的记忆并且熟练运用呢?(这是我关心的)
因为在编程的过程中,去查手册,很不优雅而且打断思路。
我记得一篇文章里说,优秀程序跟普通程序的区别是:
普通程序员一直在处理低级问题,比如某类函数如何调用。
而优秀程序员,一般都靠不断重复的训练,不需要花费精力去处理这类问题,把精力专注于解决具体事情上面。
相關不蘊涵因果。普通程序員處理低級問題不是他們普通的原因。普通程序員只有能力處理低級問題纔是。
因爲判斷力,不是能學來的,只能訓練。學習只能學來普遍,學不來特殊,學不來建立特殊和普遍的聯繫的能力。
所以我覺得,沒必要記憶這些函數,能給你看,讓你有機會記憶的,只是冰山一角。
要不然,爲什麼不讓手冊去編程呢?
常用的函数就那么几个,我认为只要记住有哪些内置函数就够了,需要的时候查一查。
常用的函数,用的多了自然就记住了,就像var_dump、json_encode
还有一些记住一部分名字,让IDE自动补全,就好了。
*****************************************