作为一名php初学者,学习的流程自当循序渐进
因为之前学习过java(kotlin),C/C++,python,且在Android开发上有一定从业经验,因此对于php的学习能有效的略过一些语言共性的东西
一,环境配置
不同于java或python,学习php要做的环境配置可以异常简洁(仅本机上),主要因为现在世面上已经非常完善的平台打架
以下摘自点击打开链接
php是具有活力的、有发展前景的开源web程序
例如:
BLOG中的Wordpress、b2evolution,
数据库管理工具的phpMyAdmin、TurboDbAdmin,
CRM中的SugarCRM、
ERP中的WebERP,
都是采用php开发的。php语言简单、散漫,追求自由,这正是开源软件的原始动力之一。
php的运行平台,一般有LAMP和WAMP。基本上,目前几乎所有的Linux发布版中都默认包含了LAMP,
而在Windows操作系统下的php集成环境WAMP,则更方便我们进行实验和部署。
一般来说,我们可以在WAMP上测试、部署好我们的站点,然后再迁移到LAMP上做正式的应用。
XAMPP、Wamp5和AppServ 简单描述
XAMPP是一个包含了 MySQL、PHP 和 Perl 的 Apache 发行版,十分容易安装和使用。
基于Windows的XAMPP,适用于几乎所有的Windows平台,包含了Apache、MySQL、PHP + PEAR、Perl、mod_php、OpenSSL、phpMyAdmin、FileZilla FTP Server和SQLite等等内容。
Wamp5是Romain Bourdon开发的WampServer的其中一个版本。WampServer专注于Windows平台,安装设置极其简单。目前,Romain Bourdon已正式推出了新版本的WampServer 2.0。
Wamp5用户众多,它集成了Apache、MySQL、PHP、phpmyadmin和SQLite,可以通过插件同时支持PHP5和PHP4,并支持Apache的mod_rewrite。
Wamp5在WinXP、win2000、win2003下运行良好。安装完成后,会在系统右下角出现一个托盘,许多功能只需要通过托盘菜单配置。
AppServ是泰国人开发的,是轻量级的php集成平台。AppServ包含了PHP、Apache、MySQL、phpMyAdmin和Perl,需要Zend Optimizer,需要自行到Zend官方下载安装。AppServ2.4.x对应php4,2.5.x对应php5,不同的版本,包含的MySql等内容的版本也有所不同。默认不支持Rewrite、Curl 等插件, 需要httpd.conf中进行配置,需要将libeay32.dll, php5ts.dll, php_curl.dll, ssleay32.dll复制到系统的system32目录里。
因为个人工作需要,用的是AppServ,但学习的相关资料主要还是XAMPP相关,不过这不影响学习
XAMPP的环境配置XAMPP
至于AppServ基本点击下一步下一步下一步就OK了
有趣的是,这二者都用了phpMyAdmin,极大的方便了数据库新手的操作和使用,但据说phpMyAdmin自身有漏洞,有必要肯定要做好安全措施(笑
二,php标志符
当解析一个文件时,PHP 会寻找起始和结束标记,也就是 <?php 和 ?>,这告诉 PHP 开始和停止解析二者之间的代码。此种解析方式使得 PHP 可以被嵌入到各种不同的文档中去,而任何起始和结束标记之外的部分都会被 PHP 解析器忽略。
PHP 也允许使用短标记 <? 和 ?>,但不鼓励使用。只有通过激活 php.ini 中的 short_open_tag 配置指令或者在编译 PHP 时使用了配置选项 --enable-short-tags 时才能使用短标记。
如果文件内容是纯 PHP 代码,最好在文件末尾删除 PHP 结束标记。这可以避免在 PHP 结束标记之后万一意外加入了空格或者换行符,会导致 PHP 开始输出这些空白,而脚本中此时并无输出的意图。
三,常量与变量
php是一门弱类型语言,这在常量/变量使用上也有极大的体现
$param = 1;
$param = array();
$param = "stringg";
变量需要有 $ 做为标志,用起来较为拗手,但也能明晰制定。变量的使用本身有较多的学习内容,包括变量的预定义/可变范围/静态变量等内容,后续继续深入学习。
常量可以用 define() 函数来定义常量,在 PHP 5.3.0 以后,可以使用 const 关键字在类定义之外定义常量。一个常量一旦被定义,就不能再改变或者取消定义。
常量只能包含标量数据(boolean,integer,float 和 string)。可以定义 resource 常量,但应尽量避免,因为会造成不可预料的结果。可以简单的通过指定其名字来取得常量的值,与变量不同,不应该在常量前面加上 $ 符号。如果常量名是动态的,也可以用函数 constant() 来获取常量的值。用 get_defined_constants() 可以获得所有已定义的常量列表。
出于书写规范,即使可以用$来分别常/变量,但书写常量时也要用大写来表达。
四,其他一些
php的函数使用/流程控制/循环/逻辑运算倒是和其他语言大同小异,有值得留意的是数组的运算