侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

PHP学习一(基础)第1/2页

php  /  管理员 发布于 7年前   138

    WEB的应用

当客户端向服务器的程序提出请求时,web服务器根据请求响应对应的页面,当页面中含有PHP脚本时,服务器会交给PHP解释器进行解释执行,将生成的html代码再回传给客户端,客户端的浏览器解释html代码,最终形成网页格式的页面。
    PHP能做什么

PHP主要应用于三个领域:
PHP分析器,一个WEB服务器器和一个WEB浏览器。
    PHP语法结构

编程语言的词法结构(lexical structure)是指管理如何用语言写程序的基本规则的集合。
用户自定义的函数名或类名都是不区分大小写的,变量区分大小写。这就是说,$name 、$NAME 和$NaMe是三个不同的变量。
PHP用分号来分隔简单的语句。
    PHP注释

PHP支持C、C++和Shell脚本风格的注释,如下:
  // 单行注释
  /*    */  多行注释     (注意:不能嵌套)
  # 脚本注释
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    常量

常量是一个固定数值,用一个简单的标识符进行定义,常量默认为大小写敏感。
按照惯例常量标识符总是大写的。
define()用这个函数来定义常量。
string(字符串)常量分为:内置常量和自定义常量。
常数只能包含标量数据(boolean(布尔),integer(整形),float(浮点数))

内置常量:PHP系统提供的在任何页面数值不会改变的常量

PHP_OS:显示服务器的操作系统版本
PHP_VERSION:显示PHP版本

一些常见的系统常量
__FILE__:PHP文件名,假如是引用文件,则显示引用文件名
__LINE__:PHP文件的行数
TRUE FALSE:表示真假的常量
E_ERROR:指明了代码中最近的错误处
E_WARNING:指明了代码中最近的警告处
E_PARSE:分析代码何处有着潜在的问题
E_NOTICE:为发生不寻常但不一定是错误的地方 

    自定义常量
用define()来定义常量
define(“mycomputer”, “IBM”);
定义常量:mycomputer  常量的值为 IBM
defined(“mycomputer”); 
检测常量是否被定义,已定义返回1  否则返回空

    变量
PHP 中一个美元符号($)后面跟上一个变量名称,即表示一个变量。变量的名称是对大小写敏感的
< php
$var = ‘Bob';
$Var = ‘Joe';
echo “$var, $Var”;    // 输出 “Bob, Joe”    可以同时输出两个变量名
$4site = ‘not yet';       // 非法变量名;以数字开头   变量不能以数字开头
$_4site = ‘not yet';      // 合法变量名;以下划线开头   可以以下划线开头
$i站点is = ‘mansikka';    // 合法变量名;      可以用中文 但是不建议使用
isset($var)      //检查变量是否定义    
unset($var)      //删除变量$var
empty($var)      //判断一个变量的值是否存在
echo $var        //空
> 

    可变变量
一个可变变量获取了一个普通变量的值作为这个可变变量的变量名
< php
$a = 'hello';      //普通变量
$$a = 'world';      //可变变量 可变变量用一个普通变量的值作为可变变量的名
echo "$a ${$a}";    //输出:hello world
echo "$a $hello";    //输出:hello world
>

    常量和变量不同
常量前面没有美元符号($); 
常量只能用 define( ) 函数定义,而不能通过赋值语句; 
常量可以不用理会变量范围的规则而在任何地方定义和访问; 
常量一旦定义就不能被重新定义或者取消定义; 
常量的值只能是标量

    数据类型
四种标量类型: 
  布尔型(boolean) 
  整型(integer)
  浮点型(float)(浮点数,也作double) 
  字符串(string) 
两种复合类型: 
  数组(array) 
  对象(object) 
最后是两种特殊类型: 
  资源(resource)
  NULL 空
PHP是一种非常弱的类型语言。
在PHP中,变量的类型通常不是由程序员设定的,确切地说,是根据该变量使用的上下文在运行时(即变量的值)决定的。
实例:
< php
$bool = TRUE;       // 布尔型
$str  = “foo”;      // 字符串
$int  = 12;         // 整型
echo gettype($bool);   // 输出 boolean   (gettype获取变量的类型)
echo gettype($str);    // 输出 string
>

    整型
整型值可以用十进制,十六进制或八进制符号指定,前面可以加上可选的符号(- 或者 +)。 
< php
$a = 1234;   // 十进制数
$a = -123;   // 一个负数
$a = 0123;   // 八进制数(等于十进制的 83)
$a = 0x1a;   // 十六进制数(等于十进制的 26)
> 

    浮点型
浮点数(也叫浮点数,双精度数或实数)可以用以下任何语法定义: 
< php
$a = 1.234;
$a = 1.2e3;
$a = 7E-10;
> 

    字符串
string是一系列字符。在 PHP 中,字符和字节一样,也就是说,一共有 256 种不同字符的可能性。这也暗示 PHP 对 Unicode 没有本地支持。(关于字符串类型后面专有一章详细讲解) 
< php   $str = “hello world!”;    >

    布尔型 
这是最简单的类型。boolean 表达了真值,可以为 TRUE 或 FALSE。
当其他类型转换为 boolean类型 时,以下值被认为是FALSE: 
布尔值 FALSE
整型值 0(零)
浮点型值 0.0(零)
空白字符串和字符串 "0"
没有成员变量的数组
没有单元的对象(仅适用于 PHP 4)
特殊类型 NULL(包括尚未设定的变量)
所有其它值都被认为是 TRUE(包括任何资源)。 

    数组
数组是PHP中的一种重要的数据类型。一个标量只能存放一个数据, 而数组可以存放多个数据。
$my=array(‘1',‘2',‘abc',‘d');
对象(Object)
对象是一种高级的数据类型以后会学

    资源(Resource)
资源是由专门的函数来建立和使用的

    类型强制转换
PHP 中的类型强制转换:在要转换的变量之前加上用括号括起来的目标类型。  
   允许的强制转换有: 
(int), (integer) - 转换成整型
(bool), (boolean) C 转换成布尔型
(float), (double), (real) - 转换成浮点型
(string) - 转换成字符串
(array) - 转换成数组
(object) C 转换成对象
< php    
    $foo = 10;   // $foo is an integer
  $bar = (boolean) $foo;   // $bar is a boolean  
> 

12下一页阅读全文


  • 上一条:
    PHP学习 运算符与运算符优先级
    下一条:
    坏狼php学习 计数器实例代码
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • PHP 8.4 Alpha 1现已发布!(0个评论)
    • 用Time Warden监控PHP中的代码处理时间(0个评论)
    • 在PHP中使用array_pop + yield实现读取超大型目录功能示例(0个评论)
    • Property Hooks RFC在PHP 8.4中越来越接近现实(0个评论)
    • 近期文章
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    • 2022-07
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-08
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    • 2024-05
    • 2024-06
    • 2024-07
    • 2024-09
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客