php和js区别是什么

  • 来源:网络
  • 更新日期:2020-08-12

摘要:php和js区别:1、js是工作在浏览器端的脚本语言,而php是工作在服务器端的脚本;2、js所提交的数据是交给浏览器来处理的,而php是把数据提交给服务器去处理,服务器再响应到浏览器。

php和js区别:1、js是工作在浏览器端的脚本语言,而php是工作在服务器端的脚本;2、js所提交的数据是交给浏览器来处理的,而php是把数据提交给服务器去处理,服务器再响应到浏览器。

推荐:《PHP视频教程》

php和js区别

两者在语法上类似,楼上说的对,js=javascript是工作在浏览器端的脚本语言,他所提交的数据是交给浏览器来处理的。但是现在的Ajax技术已经可以把js提交的数据交付到浏览器来处理。
php,是工作在服务器端的脚本,把数据提交给服务器去处理,服务器再响应到浏览器,这个你要看下BS结构。如果学习建议:很多人先学的js,道理是没错,但是如果先学PHP的话,js就是带着需求来学习的,学的会更加有针对性。

推荐:《javascript高级教程》

嵌入页面方式

  JS嵌入方式:<script></script>

  PHP嵌入方式:<?php

         ?>(常用)

输出语法

Javascript输出

  1.alert("警告的内容")

  2.prompt("提示的内容")

  3.document.write()(页面输出内容)

PHP输出

  1.echo(常用)//可同时输出多个字符串  eg:echo $a,"hello";

  2.print  //只能输出一个字符串      eg:print $a;

  3.print_r();//可以打印数组

  4.var_dump();//可输出变量的内容、类型和长度

数据类型

JS数据类型

  整型(整数)int

  单精度小数 float

  双精度小数 double

  小数 decimal

  布尔型 bool(只能存两个状态)

  日期时间类型 datetime

  字符 char(不常用)强

  字符串 string(不常用)强

PHP数据类型

bool 布尔型(存储两种状态)
int 整型
float(double) 浮点型
char 字符
string 字符串

定义变量

JS定义变量:var a = 10;

(注意:1.如果定义整数或小数的变量,等号后面的值直接写

    2.如果定义字符串变量,等号后面的值需要加双引号或单引号)

PHP定义变量: $a = 5;  $a = "hello";  $a = <<<A  定义的字符串内容 //也可放HTML代码  A;                 

(注意:1.如果定义整数或小数的变量,等号后面的值直接写

    2.如果定义字符串变量,等号后面的值需要加双引号或单引号)

字符串拼接

JS中字符串拼接:"+";  eg:"hello"+"world"

PHP中字符串拼接:".";  eg:"hello"."world"

PHP特有的变量特征

// 转义字符:一般用在字符串里面,用来输出特殊的内容
// \\" 输出双引号 \\t 制表符 \\n 换行

 eg:$s = "wo\\"rld"; //转义加引号  $s = "wo\\trld";  //转义制表  $s = "wo\\nrld";  //转义换行
$a = "你好";

 //解析变量
$b = "hello{$a}";  //输出hello,你好

类型转换

JS中类型转换

  1.转化为整数:parseInt();
  2. 转化为小数:parseFloat();

  3.判断是否为合法数字类型:isNaN();

PHP中类型转换

  1.$a = (Int)$a;  //强制转化变量a为整数

  2.$b = settype($b,"string");  //强制转化变量a为字符串

PHP中关于变量的常用函数

  $s = 5;

  1.var_dump(empty($s));  //empty($s)判断变量s是否为空,可以为0,可以为空字符串,也可以是未定义

  2.unset($s);  //删除变量s

  3.var_dump(isset($s));  //isset($s)判断变量s是否定义

PHP中的特殊用法

1.变量取地址

  $a = "hello";

  $b = &$a;  //&代表取变量的地址

  echo($b);  //输出结果为hello

2.可变变量

  $s = "hi";

  $hi = "你好";

  echo $$s;  //输出的是 你好

适合的工具做适合的事。

切豆腐是用【电锯】好还是【菜刀】好?砍树是用【电锯】好还是【菜刀】好?

用上牛逼的工具不等于人就变得牛逼了。

拿一把好菜刀也变不成大厨。坐到驾驶舱也变不成飞行员。

什么领域都有天花板。

菜做得再好也只能是【厨师】树砍得再好也只能是【伐木工】。

浏览器是JS的主场,但服务器不是JS的主场.服务器不像浏览器只能跑JS. JS在服务器的运行环境(Node)跟浏览器差别很大. 在服务器Node应用是以一个独立的守护进程运行, 代码稍有不慎就可能导致进程崩溃退出, 而且修改代码需要重启Node进程才能生效(那些自动化工具nodemon/pm2本质也是重启服务). 服务器的PHP跟浏览器反而更像,都是提供一个比较稳定的容器来执行脚本. 所以一个PHP虚拟主机环境可以稳定运行多个PHP站点.你很难写出让PHP容器(如PHP-FPM和Apache)发生崩溃的PHP代码. 浏览器也会尽量避免因为网站JS的问题导致的崩溃. 比如浏览器Chrome/Firefox跟PHP-FPM用的都是多进程架构. 子进程崩溃并不会影响主进程,主进程可以重新启动一个子进程提供服务.

看看已经逝去的ASP,连Java开发者都不爱的JSP,寂寥落寞的RoR,以及一直自嗨的Python Web,你就会知道,现在动不动鼓吹全栈的Node迟早也是这其中的一员.

Google不喜欢JS,想推自己的Dart,但没成功.Microsoft不喜欢JS,想推自己的TypeScript.Facebook也不太满意JS,所以React搞了自己的JSX.可见在浏览器端JS也不是谁都满意,更别说好事者把V8移植到服务器的Node方案了.

要说哪个语言曾经严重威胁过PHP的市场,我会说那个语言是ASP,不过还好,微软为了对付JavaEE,放弃了ASP,搞了类Java Web的ASP.NET,加上ASP无法跨平台且不开源,自然也就在与PHP的竞争中落败.

唱衰PHP的声音一直都有,但草根英雄PHP从来都用质朴的实力来教对手做人.因为PHP贯彻的是实用主义和群众路线思想, 所以没有豪门支持的PHP照样能在互联网上雄霸一方.

PHP的成功在于坚定不移地走群众路线. 量变(用户量/代码量)引起质变. 用户量体现在互联网上有超过82%的网站使用PHP驱动.代码量体现在PHP自带的各种功能扩展以及使用PHP开发的各种博客/论坛/商城系统.

只有比PHP更PHP的语言才有可能取代PHP. "更"体现在比PHP更简单,更实用,更高效,学习/开发/运维成本更低. 我很乐于见到这么一门语言出来,但很显然,现在还没有.