PHP-基础
- 介绍
- 本地环境安装
- 安装 WNMP 环境
- 代码编辑器选择
- 语法
- 变量与常量
- 常见输出函数
- 数据类型之四种标量类型
- 数据类型之三种复合类型
- 数据类型之两种特殊类型
- Operators:运算符
- 流程控制:条件判断语句
- 流程控制:循环语句
- 流程控制:中止语句
- 函数
- 类和对象:基本概念
- 类和对象:类结构
- 类和对象:面向对象
- 类和对象:三种特殊类
- 类和对象
- 类和对象:Trait
- 类和对象:魔术方法
- 命名空间
- 【实战】PHP表单
PHP-函数
-
String
- addcslashes()
- addslashes()
- bin2hex()
- chop()
- chr()
- chunk_split()
- convert_cyr_string()
- convert_uudecode()
- convert_uuencode()
- count_chars()
- crc32()
- crypt()
- echo
- explode()
- fprintf()
- get_html_translation_table()
- hebrev()
- hebrevc()
- hex2bin()
- htmlentities()
- htmlspecialchars()
- htmlspecialchars_decode()
- html_entity_decode()
- implode()
- join()
- lcfirst()
- levenshtein()
- localeconv()
- ltrim()
- md5()
- md5_file()
- metaphone()
- money_format()
- nl2br()
- nl_langinfo()
- number_format()
- ord()
- parse_str()
- printf
- quoted_printable_decode()
- quoted_printable_encode()
- quotemeta()
- rtrim()
- setlocale()
- sha1()
- sha1_file()
- similar_text()
- soundex()
- sprintf()
- sscanf()
- strcasecmp()
- strchr()
- strcmp()
- strcoll()
- strcspn()
- stripcslashes()
- stripos()
- stripslashes()
- strip_tags()
- stristr()
- strlen()
- strnatcasecmp()
- strnatcmp()
- strncasecmp()
- strncmp()
- strpbrk()
- strpos()
- strrchr()
- strrev()
- strripos()
- strrpos()
- strspn()
- strstr()
- strtok()
- strtolower()
- strtoupper()
- strtr()
- str_getcsv()
- str_ireplace()
- str_pad()
- str_repeat()
- str_replace()
- str_rot13()
- str_shuffle()
- str_split()
- str_word_count()
- substr()
- substr_compare()
- substr_count()
- substr_replace()
- trim()
- ucfirst()
- ucwords()
- vfprintf()
- vprintf()
- vsprintf()
- wordwrap()
-
Array
- array()
- array_change_key_case()
- array_chunk()
- array_column()
- array_combine()
- array_count_values()
- array_diff()
- array_diff_assoc()
- array_diff_key()
- array_diff_uassoc()
- array_diff_ukey()
- array_fill()
- array_fill_keys()
- array_filter()
- array_flip()
- array_intersect()
- array_intersect_assoc()
- array_intersect_key()
- array_intersect_uassoc()
- array_intersect_ukey()
- array_keys()
- array_key_exists()
- array_key_first()
- array_key_last()
- array_map()
- array_merge()
- array_merge_recursive()
- array_multisort()
- array_pad()
- array_pop()
- array_product()
- array_push()
- array_rand()
- array_reduce()
- array_replace()
- array_replace_recursive()
- array_reverse()
- array_search()
- array_shift()
- array_slice()
- array_splice()
- array_sum()
- array_udiff()
- array_udiff_assoc()
- array_udiff_uassoc()
- array_uintersect()
- array_uintersect_assoc()
- array_uintersect_uassoc()
- array_unique()
- array_unshift()
- array_values()
- array_walk()
- array_walk_recursive()
- arsort()
- asort()
- compact()
- count()
- current()
- each()
- end()
- extract()
- in_array()
- key()
- key_exists()
- krsort()
- ksort()
- list()
- natcasesort()
- natsort()
- next()
- pos()
- prev()
- range()
- reset()
- rsort()
- shuffle()
- sizeof()
- sort()
- uasort()
- uksort()
- usort()
-
File
- basename()
- chgrp()
- chmod()
- chown()
- clearstatcache()
- copy()
- dirname()
- diskfreespace()
- disk_free_space()
- disk_total_space()
- fclose()
- feof()
- fflush()
- fgetc()
- fgetcsv()
- fgets()
- fgetss()
- file()
- fileatime()
- filectime()
- filegroup()
- fileinode()
- filemtime()
- fileowner()
- fileperms()
- filesize()
- filetype()
- file_exists()
- file_get_contents()
- file_put_contents()
- flock()
- fnmatch()
- fopen()
- fpassthru()
- fputcsv()
- fputs()
- fread()
- fscanf()
- fseek()
- fstat()
- ftell()
- ftruncate()
- fwrite()
- glob()
- is_dir()
- is_executable()
- is_file()
- is_link()
- is_readable()
- is_uploaded_file()
- is_writable()
- is_writeable()
- lchgrp()
- lchown()
- link()
- linkinfo()
- lstat()
- mkdir()
- move_uploaded_file()
- parse_ini_file()
- parse_ini_string()
- pathinfo()
- pclose()
- popen()
- readfile()
- readlink()
- realpath()
- realpath_cache_get()
- realpath_cache_size()
- rename()
- rewind()
- rmdir()
- set_file_buffer()
- stat()
- symlink()
- tempnam()
- tmpfile()
- touch()
- umask()
- unlink()
-
Datetime
- checkdate()
- date()
- date_add()
- date_create()
- date_create_from_format()
- date_date_set()
- date_default_timezone_get()
- date_default_timezone_set()
- date_diff()
- date_format()
- date_get_last_errors()
- date_interval_create_from_date
- date_interval_format()
- date_isodate_set()
- date_modify()
- date_offset_get()
- date_parse()
- date_parse_from_format()
- date_sub()
- date_sunrise()
- date_sunset()
- date_sun_info()
- date_timestamp_get()
- date_timestamp_set()
- date_timezone_get()
- date_timezone_set()
- date_time_set()
- getdate()
- gettimeofday()
- gmdate()
- gmmktime()
- gmstrftime()
- idate()
- localtime()
- microtime()
- mktime()
- strftime()
- strptime()
- strtotime()
- time()
- timezone_abbreviations_list()
- timezone_identifiers_list()
- timezone_location_get()
- timezone_name_from_abbr()
- timezone_name_get()
- timezone_offset_get()
- timezone_open()
- timezone_transitions_get()
- timezone_version_get()
-
Filter
-
HTTP
-
cURL
- curl_close()
- curl_copy_handle()
- curl_errno()
- curl_error()
- curl_escape()
- curl_exec()
- curl_file_create()
- curl_getinfo()
- curl_init()
- curl_multi_add_handle()
- curl_multi_close()
- curl_multi_errno()
- curl_multi_exec()
- curl_multi_getcontent()
- curl_multi_info_read()
- curl_multi_init()
- curl_multi_remove_handle()
- curl_multi_select()
- curl_multi_setopt()
- curl_multi_strerror()
- curl_pause()
- curl_reset()
- curl_setopt()
- curl_setopt_array()
- curl_share_close()
- curl_share_errno()
- curl_share_init()
- curl_share_setopt()
- curl_share_strerror()
- curl_strerror()
- curl_unescape()
- curl_version()
-
PDO
-
PDOStatement
介绍
简介
1. 我是谁
来了,哲学终极三问之第一问。
PHP 是什么呢?PHP 是一种脚本语言,并不是独立的应用程序。脚本只在某个事件——例如用户点击一个按钮之后才运行。
通过 PHP,我们可以输出各种类型的数据,包括但不限于 HTML、图像、PDF 文件甚至 Flash 动画(使用libswf
和Ming
),以及各种纯文本。
2. 我可以做什么
除却定义所介绍的Web网站开发,PHP针对服务器可以做更多事情:
- 动态页面生成:用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多
- 文件系统操作:创建、打开、读取、写入、删除和关闭
- 图像操作:PHP通过开启GD库(在随后的PHP配置章节中将会涉及)等图像处理库,可以对图像进行简单的处理
- 数据库数据处理:PHP支持几乎所有流行的数据库,针对不同的数据库扩展,数据库增加、删除、更新、查询等操作都可以用PHP完成
- 数据加密:PHP拥有许多数据加密的方式,为加密提供了多样化的选择(但更加安全的做法是设计自己的加密算法)
- 发送/接收Cookies
还有更多功能例如PHP可以收集并处理表单数据、限制页面访问等。心有多大,舞台就有多大。如果你热爱探索,用PHP做一切你想做的。
后续我们的教程将会通过一个个实例来说明这点。请持续关注我们哦!
3. 为什么选我
像许多陷入恋爱的内心敏感的女孩子都会问这个问题。
PHP 是世界上最流行的后端脚本语言之一,毋庸置疑,它拥有许多优点。前面的问题已经侧面反映出一些,这里做一些总结来帮助我们更好地了解 PHP 的优势。
- 开源:意味着我们可以自由、免费地使用或查看其底层实现。
- 易于查看的文档:PHP官方文档足够清晰与完善,同时拥有许多示例。对于英语不好的人,其中文解释也通俗易懂,降低入门门槛。
- 稳定:PHP 已经存在24年,拥有强大的社区支持,这表示一旦PHP出现BUG将会被很快解决。在官网上你可以看到PHP版本发布的新闻,截至2019年7月3日,目前稳定版本已经发行至7.3.6(预览版为7.4.0)。本教程使用的是PHP 7.3.6 版,但仍然建议使用最新稳定版。
- 跨平台:不同于C#,PHP 不依赖操作系统,可以在Windows、Linux和macOS上完美运行,兼容几乎所有服务器(Apache、IIS和Nginx等等)。
- 易学:(说到这个笔者想起了曾经被C++支配的恐惧)PHP 的命令功能很容易理解,因为用户可以很容易地从命令本身的名称中找出它的功能,并且可以高效地运行在服务器端。
- 快速:对于 Web 开发,速度是极为重要的需求之一。对于其他脚本语言,连接数据库并从中获取数据等操作会花费大量时间,严重降低用户体验。但 PHP 不同,它内置了多种数据库模块,在连接数据库和使用其他重要应用程序方面都更快。
- 海量的库支持:PHP 拥有众多扩展,内置许多功能完善的模块,让开发者不必重新编写某个常见功能的实现。同时近年来composer和packagist的发展,我们可以使用更多别人已经封装好的库,降低开发成本。
And so on...
任何一门流行的编程语言,都是瑕不掩瑜的,每个人的喜好都不相同,言论自然褒贬不一,根据项目的具体情况选择合适的开发语言才是正确的做法。
如何开始
如果你像笔者一样习惯使用文字进行学习,你可以关注我们后续的文章,与我们共同进步。之后我们也将整理一份 PHP 学习书目,以供大家沉浸式学习。
也许你更习惯看教学视频提升自己,后续我们也将整理出部分视频资源,请持续关注。
下一章,我们将从环境安装开始。
可以写
Hello,world
了,真开心!