search
Homephp教程php手册web前端初识PHP(一)
web前端初识PHP(一)Jun 06, 2016 pm 07:36 PM
phpwebFirst acquaintancefront enddevelopattack

做为一名合格的 前端 开发攻城狮,了解一门服务端语言是必须的,所以我选了php。都说学的第一门语言对第二门语言会产生较大的影响,确实,每当我看到一个php知识点时,就同时会想到这个知识点在Javascript中有没有,有什么不一样?还有一些知识是共通的,这

做为一名合格的前端开发攻城狮,了解一门服务端语言是必须的,所以我选了php。都说学的第一门语言对第二门语言会产生较大的影响,确实,每当我看到一个php知识点时,就同时会想到这个知识点在Javascript中有没有,有什么不一样?还有一些知识是共通的,这加快了我的php入门速度。为了加深自己的印象,我准备记录一下学习php的过程,这个过程中将会穿插一些php与Javascript的异同点。我选的第一份教程是来自w3school,因为上面的教程比较基础适合入门(当然慕课网的也不错),我的html也是从那里起步的。

语法

跟js一样,php也是一门脚本语言,但它运行在服务端,php语句必须以分号结尾,js就不用。相比js,php多了一种注释方式#。php中只有变量对大小写敏感。

变量

  • 变量以$开头,有人说程序员想钱想疯了,到处都是美元符,$后面是变量名
  • 变量名必须以字母或下划线开头
  • 变量名只能包含数字、字母、下划线

补充:php中没有变量声明提升的概念,所有在使用变量或函数前必须先声明。

跟js一样,php也不需要定义变量的类型,php会自动转成正确的数据类型。

常量

常量需要用define(a,b,c)来声明,a是常量名,b是常量的值,c用来指定该常量是否对大小写敏感。常量不可重复声明,也就是说声明后无法更改其值。常量不同于变量,常量是自动全局的,不管在函数内还是函数外定义,在函数内外都可以访问,类似于超全局变量。超全局变量:在全部作用域中始终可用的内置变量。注:常量前面没有钱($)。

作用域

  1. local 局部 :函数内部声明的变量,在函数外不可访问(js闭包可以访问函数内部变量),函数执行完后内存回收机制自动销毁局部变量(js不会)。
  2. global 全局 :函数外声明的变量,在函数内不可访问(在js中称为全局变量,当然可以在函数内访问),如果要在函数内访问,需要做处理:在函数内变量前加“global”,如global $name;
  3. static 静态 :用在函数内声明变量,跟local的区别是static声明的变量在函数执行完后不会自动销毁。

输出

echo:可输出多个字符串,无返回值,比print稍快

print:只能输出一个字符串,返回值总是1

数据类型

  • 字符串 string
  • 整数 int,就是非小数
  • 浮点数 float,即小数或指数形式的数字
  • 逻辑 boolean,即true和false
  • 数组 array
  • 对象 object
  • NULL null,唯一值即null
  • 资源 resource  通过mysql查询返回的值称为资源

检测数据类型的函数是var_dump(),数据类型与js有些许不一样,php中数字分为了两种,数组也单独做为一种数据类型了。

字符串函数

检测字符串长度的strlen(),长度以字符计,单个数字、英文、空格计一个字符,单个中文计3个字符。js里单个中文计长度1。

在字符串中检测指定的字符用strpos()函数,相当于js的.indexOf()方法,找到就返回对应的位置,没找到时strpos()返回false而indexOf返回-1。

运算符

比较多,就只说与js不同的吧。

.运算符在php中叫串接,相当于js中字符串+字符串中的+号的功能,.=也就相当于js字符串拼接时的+=;

比较运算符中有两个不等于:!=和,不知道它们的区别在哪里?度娘和google也未搜到相关答案,有知道的同学还望告知不胜感激!另外还有一个完全不等于!==,值不相等,类型也不同。

逻辑运算符中有一个异或xor,运算符两边的值有且只有一个为true结果才为true。

if else/switch/while/for循环大致和js相同。

函数

php中的函数设置默认值直接在函数名后面的括号内设置,如设置$num的默认值为2:

<span>function</span> getNum(<span>$num</span>=2<span>){
    </span><span>return</span> <span>$num</span><span>;
}
</span><span>echo</span> getNum(); // 2

 

 数组

php中的关联数组类似js中的json,如下面是一个关联数组:

<span>$arr</span> = <span>array</span>("name"=>"wangmeijian","age"=>1024,"sex"=>"boy");

 

不同与js的是,php中不能直接echo出数组内容,js中可以用alert或console.info打印出来。

数组排序,php就比js丰富了,有正序sort(),倒序rsort(),按键正序ksort(),按键倒序krsort(),按值正序asort(),按值倒序arsotr()。

最后介绍几个超全局变量:

$GLOBALS:可以通过$GLOBALS[变量名]读取php脚本中任意全局变量,其实就相当于js的window。

$_SERVER:保存关于报头、路径和脚本位置的信息。

$_REQUEST:用来收集表单提交的数据,根据表单name值来读取对应表单值,如$_REQUEST['age']读取年龄。

$_POST:用来收集通过post方式提交的数据,通过name读取对应值。

$_GET:用来收集通过get方式提交的数据,也可以收集url中发送的数据。

 

以上,都是入门级别的知识,加上了个人理解,请各位大中小牛勿喷。

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Web Speech API开发者指南:它是什么以及如何工作Web Speech API开发者指南:它是什么以及如何工作Apr 11, 2023 pm 07:22 PM

​译者 | 李睿审校 | 孙淑娟Web Speech API是一种Web技术,允许用户将语音数据合并到应用程序中。它可以通过浏览器将语音转换为文本,反之亦然。Web Speech API于2012年由W3C社区引入。而在十年之后,这个API仍在开发中,这是因为浏览器兼容性有限。该API既支持短时输入片段,例如一个口头命令,也支持长时连续的输入。广泛的听写能力使它非常适合与Applause应用程序集成,而简短的输入很适合语言翻译。语音识别对可访问性产生了巨大的影响。残疾用户可以使用语音更轻松地浏览

如何使用Docker部署Java Web应用程序如何使用Docker部署Java Web应用程序Apr 25, 2023 pm 08:28 PM

docker部署javaweb系统1.在root目录下创建一个路径test/appmkdirtest&&cdtest&&mkdirapp&&cdapp2.将apache-tomcat-7.0.29.tar.gz及jdk-7u25-linux-x64.tar.gz拷贝到app目录下3.解压两个tar.gz文件tar-zxvfapache-tomcat-7.0.29.tar.gztar-zxvfjdk-7u25-linux-x64.tar.gz4.对解

web端是什么意思web端是什么意思Apr 17, 2019 pm 04:01 PM

web端指的是电脑端的网页版。在网页设计中我们称web为网页,它表现为三种形式,分别是超文本(hypertext)、超媒体(hypermedia)和超文本传输协议(HTTP)。

web前端和后端开发有什么区别web前端和后端开发有什么区别Jan 29, 2023 am 10:27 AM

区别:1、前端指的是用户可见的界面,后端是指用户看不见的东西,考虑的是底层业务逻辑的实现,平台的稳定性与性能等。2、前端开发用到的技术包括html5、css3、js、jquery、Bootstrap、Node.js、Vue等;而后端开发用到的是java、php、Http协议等服务器技术。3、从应用范围来看,前端开发不仅被常人所知,且应用场景也要比后端广泛的太多太多。

web前端打包工具有哪些web前端打包工具有哪些Aug 23, 2022 pm 05:31 PM

web前端打包工具有:1、Webpack,是一个模块化管理工具和打包工具可以将不同模块的文件打包整合在一起,并且保证它们之间的引用正确,执行有序;2、Grunt,一个前端打包构建工具;3、Gulp,用代码方式来写打包脚本;4、Rollup,ES6模块化打包工具;5、Parcel,一款速度极快、零配置的web应用程序打包器;6、equireJS,是一个JS文件和模块加载器。

深入探讨“高并发大流量”访问的解决思路和方案深入探讨“高并发大流量”访问的解决思路和方案May 11, 2022 pm 02:18 PM

怎么解决高并发大流量问题?下面本篇文章就来给大家分享下高并发大流量web解决思路及方案,希望对大家有所帮助!

Python轻量级Web框架:Bottle库!Python轻量级Web框架:Bottle库!Apr 13, 2023 pm 02:10 PM

和它本身的轻便一样,Bottle库的使用也十分简单。相信在看到本文前,读者对python也已经有了简单的了解。那么究竟何种神秘的操作,才能用百行代码完成一个服务器的功能?让我们拭目以待。1. Bottle库安装1)使用pip安装2)下载Bottle文件https://github.com/bottlepy/bottle/blob/master/bottle.py2.“HelloWorld!”所谓万事功成先HelloWorld,从这个简单的示例中,了解Bottle的基本机制。先上代码:首先我们从b

web是前端还是后端web是前端还是后端Aug 24, 2022 pm 04:10 PM

web有前端,也有后端。web前端也被称为“客户端”,是关于用户可以看到和体验的网站的视觉方面,即用户所看到的一切Web浏览器展示的内容,涉及用户可以看到,触摸和体验的一切。web后端也称为“服务器端”,是用户在浏览器中无法查看和交互的所有内容,web后端负责存储和组织数据,并确保web前端的所有内容都能正常工作。web后端与前端通信,发送和接收信息以显示为网页。

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks agoBy尊渡假赌尊渡假赌尊渡假赌
Repo: How To Revive Teammates
1 months agoBy尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: How To Get Giant Seeds
1 months agoBy尊渡假赌尊渡假赌尊渡假赌

Hot Tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.