PHP编程入门的基本语法知识点总结

一、何为php

PHP,即“PHP: Hypertext   Preprocessor”,是一种被广泛应用的开源通用脚本语言,尤其适用于 Web 开发并可嵌入 HTML   中去。它的语法利用了 C、Java 和 Perl,易于学习。该语言的主要目标是允许 web 开发人员快速编写动态生成的 web   页面,但 PHP 的用途远不只于此。

简单来说,就是php是一种脚本语言,可以做很多事情。①服务器端脚本 ②命令行脚本 ③编写桌面程序

二、开始php

(1)下载php解释器,其实win下面,最简单的还是wamp这个软件,下载下来什么都有了...

(2)win下面貌似还需要,mscvr110.dll 这个链接库,vc2012运行库,安装即可

(3)ide,无耻的使用了 phpStorm,等哥有钱了一定给你补回来, so...

User: newasp
License:
===== LICENSE BEGIN =====
14617-12042010
00001xrVkhnPuM!Bd!vYtgydcusnqt
mM!hZWoGg"DprWxZCBwsy8T91O7MRu
NVHtrbzv8O9mmoLvtijcHSSE7i5Jr!
===== LICENSE END ====

三、入门引导

(1)简单的输出

<?php
/**
 * Created by PhpStorm.
 * User: LENOVO
 * Date: 2014/9/28
 * Time: 14:51
 */
// 输出PHP详细信息
echo phpinfo();

//C:\php-5.6.1-Win32-VC11-x86\php.exe D:\dizzy\php_test\index.php
//phpinfo()
//PHP Version => 5.6.1
//
//System => Windows NT LENOVO-PC 6.1 build 7600 (Windows 7 Ultimate Edition) i586
//Build Date => Sep 24 2014 18:54:12
//Compiler => MSVC11 (Visual C++ 2012)
//Architecture => x86
//Configure Command => cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo"
//Server API => Command Line Interface

(2)简单的表单处理

// 一个简单的html表单
<form action="action.php" method="post">
  <p>姓名: <input type="text" name="name" /></p>
  <p>年龄: <input type="text" name="age" /></p>
  <p><input type="submit" /></p>
</form>

// action.php 接收表单数据, 使用超全局变量
%_POST["name"]
%_POST["age"]
<?php echo htmlspecialchars($_POST['name']); ?>
<?php echo (int)$_POST['age']; ?>
// 这便是最简单的表单提交,及数据接收

四、基本语法

(1)PHP标记

<?php

echo "Hello World!";

// 当文件为纯PHP时,最好在末尾删除PHP结束标记
//?>

(2)从HTML中分离

// 在一对开始和结束之外的内容,都会被PHP解释器忽略。也就是html标签和PHP代码混合的那种,跟jsp,asp一样...
<p>This is going to be ignored by PHP and displayed by the browser.</p>
<?php echo 'While this is going to be parsed.'; ?>
<p>This will also be ignored by PHP and displayed by the browser.</p>

// 使用条件,高级分离
<?php if ($expression == true): ?>
  This will show if the expression is true.
<?php else: ?>
  Otherwise this will show.
<?php endif; ?>

(3)指令分隔符,注释

PHP需要在每个语句后面用分隔符结束指令。

注释: // 或 /* ... */  但是,*/ 会匹配最近的那个,切记!切记!

五、类型

PHP支持8种原始数据类型。

  • 四种标量类型:boolean(布尔型),integer(整型),float(浮点型,double),string(字符串)
  • 两种复合类型:array(数组),object(对象)
  • 两种特殊类型:resource(资源),NULL(无类型)
<?php
$a_bool = TRUE;  // a boolean
$a_str = "foo"; // a string
$a_str2 = 'foo'; // a string
$an_int = 12;   // an integer

echo gettype($a_bool); // prints out: boolean
echo gettype($a_str); // prints out: string

// If this is an integer, increment it by four
if (is_int($an_int)) {
  $an_int += 4;
}

// If $bool is a string, print it out
// (does not print out anything)
if (is_string($a_bool)) {
  echo "String: $a_bool";
}
?>

(1)Boolean 布尔类型

可以为TRUE或FALSE,不区分大小写。

一般非0,即为TRUE。

(2)Integer 整型

整型可以使用十进制,十六进制,八进制或二进制表示。八进制前面必须加0(零),十六进制加0x,二进制加0b。

如果给定的一个数超出了interger的范围,将会被解释为float。同样运算结果超出integer范围,同样如此。

php没有整除运算符,1/2 将产生出 float 0.5。可以强制转换为integer 或使用round() 更好的四舍五入。

echo (int)2.9; // 输出 2
echo round(2.555, 2) // 输出 2.56

// 决不要将未知的分数强制转换为 integer,这样有时会导致不可预料的结果。
<?php
echo (int) ( (0.1+0.7) * 10 ); // 显示 7!
?>

(3)Float 浮点型(double)

浮点型,也叫浮点数float,双精度double, 实数real。

<?php
$a = 1.234;
$b = 1.2e3;
$c = 7E-10;
?>

(4)String 字符转

一个字符串string,就是由一系列的字符组成,其中每个字符等同于一个字节。这就意味着php只能支持256个字符集,因此不支持Unicode。

string最大可以达到2GB。

<?php
$a = 123;
echo '$a'; // 输出 $a
echo "$a"; // 输出 123, 转义字符 '\'

$str = <<<'EOD'
Example of string
spanning multiple lines
using nowdoc syntax.
EOD;

?>

(5)Array 数组

php中的数组,实际上是一个有序序列。映射是把values关联到keys的类型。

由于数组元素的值也可以说是另外的数组,树形结构和多维数组也是允许的。

<?php
$array = array(
  "foo" => "bar",
  "bar" => "foo",
);

// 自PHP 5.4 起
$array = [
  "foo" => "bar",
  "bar" => "foo",
]
// key 可以是 integer 或 string 类型
// key 值为可选项, 如果未指定,则使用之前用过最大的integer键名加上1作为新键名
?>

// 要修改某个值,通过其键名给该单元赋一个新值。
// 要删除某个键值对,对其调用 unset() 函数。

使用 unset() 需要注意,此时数组不会重建索引。需要重建索引,可以使用 array_values() 函数。

数组计算总数: 使用 count() 函数

(6)Object 对象

<?php
class foo{
  function do_foo(){
    echo "Doing foo.";
  }
}
// 用 new 实例化一个类
$f = new foo;
$f->do_foo;

(7)Resource 资源类型

资源 resource 是一种特殊的变量,保存了到外部资源的一个引用。资源是通过专门的函数来建立和使用的。

(8)NULL

特殊的NULL 表示一个变量没有值。NULL类型唯一可能的值就是NULL。

可被认定为NULL的变量:①被赋值为NULL ②尚未被赋值 ③被unset

(9)Callback 回调类型

自PHP5.4 起,可以使用 callable 类型 指定回调类型 callback。

六、变量

php中变量用一个美元符号 $ 后面跟变量名来表示的。区分大小写。

变量默认总是传值赋值。

<?php

$a = 1;
// 值传递赋值
$b = $a
// 引用赋值
$c = &$a

// global 关键字
global ; $GLOBALS
时间: 2016-01-25

PHP容易忘记的知识点分享

1.定义常量: 复制代码 代码如下: <?php //1 define("TAX_RATE",0.08); echo TAX_RATE; //输出0.08 //2 (PHP 5.3) const TAX_RATE2 =0.01; echo '--'.TAX_RATE2; //输出0.01 ?> 2.require 和require_once 区别: 前者遇到即包含文件,后者会判断是否已经包含过了,如果包含过了,则不再包含文件.一可以节省资源,二可以避免重复定义的错误. 3.

PHP类相关知识点实例总结

本文实例总结了PHP类相关知识点.分享给大家供大家参考,具体如下: 最终类与最终方法 如果父类中的方法被声明为 final,则子类无法覆盖该方法.如果一个类被声明为 final,则不能被继承. final class a{} class a{ final public function A(){} } 抽象类与抽象方法 abstract class a { public abstract function func(); } class A extends a{ public function

PHP那些琐碎的知识点(整理)

PHP不会检查单引号 '' 字符串中变量内插或(几乎)任何转义序列,所以采用单引号这种方式来定义字符串相当简单快捷.但是,双引号 "" 则不然,php会检查字符串中的变量或者转义序列,并输出变量和转义序列的值. $a = "123"; print '$a\t'; print '$a'; 输出: $a\t$a 如果是双引号 "" : $a = "123"; print "$a\t"; print "

PHP高手需要要掌握的知识点

如果想进入大的企业进行底层开发的话必须对互联网各方面的技术原理了解的很清楚,例如apache实现原理.语言方面既然是php开发自然对 c/c++要求比较高.往往需要自己写php扩展.使用mysql自然想很多常见的,性能瓶颈要能有很好的解决方案.mysql 插件编写,apache模块编写.联系起来结合点还是要会c. 倘若是做中间层和前端工作则要求对css,javascript要求比较高.当然对web的一系列实现原理也是要非常熟悉的. 对新技术要比较敏感,才能证明你有很好的学习能力和使用能力. 努力

PHP中最容易忘记的一些知识点总结

1.定义常量: 复制代码 代码如下: <?php //1    define("TAX_RATE",0.08); echo TAX_RATE;  //输出0.08 //2 (PHP 5.3)    const TAX_RATE2 =0.01; echo '--'.TAX_RATE2; //输出0.01?> 2.require 和require_once 区别: 前者遇到即包含文件,后者会判断是否已经包含过了,如果包含过了,则不再包含文件.一可以节省资源,二可以避免重复定义的

cakephp常见知识点汇总

本文实例总结了cakephp常见知识点.分享给大家供大家参考,具体如下: 1. 调用其他控制器的模板,重定向 方法一: 在此调用/views/tasks/tasks下的hello.ctp模板 $this -> viewPath = 'tasks'; $this -> render('hello'); 方法二(带参): $this->redirect(array('controller'=>'users','action'=>'welcome',urlencode($this-

php中关于mysqli和mysql区别的一些知识点分析

一: PHP-MySQL 是 PHP 操作 MySQL 资料库最原始的 Extension ,PHP-MySQLi 的 i 代表 Improvement ,提更了相对进阶的功能,就 Extension 而言,本身也增加了安全性.而 PDO (PHP Data Object) 则是提供了一个 Abstraction Layer 来操作资料库,用讲的其实看不出来有有什麽差别,所以就直接看程式吧- 首先,先来看一段用 PHP-MySQL 写成的程式码,这类的范例常用在世界各地: 复制代码 代码如下:

php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表

复制代码 代码如下: <?php /* *打印乘法口绝表 */ echo "九灵九乘法口绝表<br><br><br>"; echo "<table>"; for($i=1;$i<=9;$i++){ echo "<tr>"; for($j=1;$j<=$i;$j++){ echo "<td>".$j."*".$i.&qu

php入门学习知识点一 PHP与MYSql连接与查询

一.连接数据库 1. mysql_connect: 开启 MySQL 链接 mysql_connect('主机','用户名','密码') 2. mysql_select_db: 打开一个数据库 mysql_select_db('数据库名',$链接标识符) //链接标识符不填写则默认为上一次打开的连接 3. mysql_query("set names 'GBK'") 解决中文乱码问题; mysql_query("set names '编码(utf8或GBK)' ")

Mysql连接join查询原理知识点

Mysql连接(join)查询 1.基本概念 将两个表的每一行,以"两两横向对接"的方式,所得到的所有行的结果. 假设: 表A有n1行,m1列: 表B有n2行,m2列: 则表A和表B"对接"之后,就会有: n1*n2行: m1+m2列. 2.则他们对接(连接)之后的结果类似这样: 3.连接查询基本形式: from  表1  [连接方式] join  表2  [on连接条件]连接查询基本形式: from  表1  [连接方式] join  表2  [on连接条件] 1

php入门学习知识点四 PHP正则表达式基本应用

复制代码 代码如下: <?php //正则表达 式 // ereg区分大小写 if(ereg("([A-Z]{3,})", "AAA")){ echo "大写能匹配!<br>"; }else{ echo "no"; } if(ereg("([A-Z]{3,})", "aaa")){ echo "yes"; }else{ echo "小写不能

php入门学习知识点二 PHP简单的分页过程与原理

<?php require '../inc/conn.php'; ?> <?php //初始参数设置 $pagesize=5 ; //分页大小 $pagenum=1 ; //默认为第一页 //第一步:获取当前是第几页 if($_GET){ if($_GET['pagenum']){ $pagenum=$_GET['pagenum']; } } //第二步:获取当前分页的内容列表 $sql="Select * From message limit ".($pagenum

php入门学习知识点六 PHP文件的读写操作代码

复制代码 代码如下: <?php //打开文件 $fp=fopen('tmp.html', 'r'); //读取文件内容 可以用以下两个函数进行操作 fread,file_get_contents $str=fread($fp, filesize('tmp.html')); //filesize为获取文件大小 $content=file_get_contents('tmp.html'); //写文件 $news=fopen('news.html', 'w'); fwrite($news, $co

php入门学习知识点五 关于php数组的几个基本操作

复制代码 代码如下: <?php /* * 简单的数组定义与访问 */ echo "简单的数组定义与访问<br>"; echo "############################################################<br>"; $address=array(5); $address[0]="福州"; $address[1]="厦门"; $address[2]=&

php入门学习知识点三 PHP上传

一.上传表单的HTML代码 复制代码 代码如下: <form action="UpLoad.php" method="post" enctype="multipart/form-data" name="upFrm"> <input type="file" name="Imgs" id="Imgs"> <input type="s

php入门学习知识点七 PHP函数的基本应用

复制代码 代码如下: <?php /* * 简单的函数 */ function fontBold($con){ return "<B>$con</B>"; } $str="简单的函数测试!"; echo "普通文本:$str<br>"; echo "加粗文本:".fontBold($str).""; /* * 带可选参数的函数 */ function fontCol

Java的Hibernate框架结合MySQL的入门学习教程

零.关于Hibernate Hibernate是冬眠的意思,它是指动物的冬眠,但是本文讨论的Hibernate却与冬眠毫无关系,而是接下来要讨论的SSH2框架中的一员.Hibernate是一个开源的项目,它是一个对象关系模型的框架,并且对JDBC进行了非常轻量级的封装,程序员在开发时可以使用对象编程思维进行开发. 下载地址:http://hibernate.org/orm/downloads/ Note:轻量级和重量级的区别,轻量级的框架包较小,并且使用较简单,而且测试容易,开发效率高:重量级框