当一个JavaScripter初次进入PHP的世界,他将看到这样的风景


<?php
define('a', '我是常量');//定义常量
$b = '我是变量'//定义变量
?>
<?php
var_dump( '外婆的'+'彭湖湾');
?>

<?php
var_dump( '外婆的'.'彭湖湾');
?>

<?php
$obj = {name:'penghwuan'};
var_dump($obj);
?>
<?php
$obj_text = '{"name":"penghwuan"}';//定义一个字面量形式的字符串
$obj = json_decode($obj_text);//将字符串解析成JSON对象
var_dump($obj);//打印对象
?>
运行结果:

<?php
class obj {
var $name = '彭湖湾';//定义成员变量
var $hometown = '广东梅州';//定义方法
public function get_name(){
return $this->name;
}
}
$person = new obj;//实例化对象
$hometown = $person->hometown;//通过对象访问成员变量
$name = $person->get_name();//通过对象调用方法
echo '我叫'.$name;
echo "<br/>";
echo '我来自'.$hometown;
?>

<script type="text/javascript">
console.log(bless);//输出一个尚且不存在的变量
</script>

<script type="text/javascript">
console.log(bless);//输出一个尚且不存在的变量
var bless = '鸡年大吉'
</script>

<script type="text/javascript">
send_bless();
function send_bless(){
console.log('祝你鸡年大吉吧!')
}
</script>

<?php
echo $bless;//提前输出变量
send_bless();//提前调用函数
$bless = '鸡年大吉';//定义变量
function send_bless(){//通过声明方式定义函数
echo '祝你鸡年大吉吧'."<br/>";
}
?>

<?php
var $word = '算法要学好';
echo $word;
?>

<?php
class Person{
var $word ='算法要学好';
}
$me = new Person();
echo $me->word;
?>

<script type="text/javascript">
var obj = {name:'彭湖湾'};
console.log(obj.name);
</script>

<?php
class Person{
var $word ='算法要学好';
function echo_word(){
echo '数据结构也很重要';
}
}
$me = new Person();
echo $me->word;//通过->访问对象中的成员变量
echo "<br/>";
echo $me->echo_word();//通过->调用对象中的方法
?>

<script type="text/javascript">
var number =1,str ='字符串',bool =true,null_value = null,undefined_value =undefined;
var fuc = function(){}, array = [1,2,3],obj ={};
console.log('number的类型是',typeof number);
console.log('str的类型是',typeof str);
console.log('null_value的类型是',typeof null_value);
console.log('undefined_value的类型是',typeof undefined_value);
console.log('fuc的类型是',typeof fuc);
console.log('array的类型是',typeof array);
console.log('obj的类型是',typeof obj);
</script>


<script type="text/javascript">
var fuc = function(){}, array = [1,2,3],obj ={};
console.log('fuc的类型是Function',fuc instanceof Function);
console.log('array的类型是Array',array instanceof Array);
console.log('obj的类型是Object',obj instanceof Object);
console.log('fuc的类型是Object',fuc instanceof Object);
console.log('array的类型是Object',array instanceof Object);
</script>
<?php
class class_test{};
$obj = new class_test();
$array_test = [1,2,3];
$string_test = '字符串';
$int_test = 1;
$float_test = 1.2;
var_dump(gettype($obj));//检测对象
echo "<br/>";
var_dump(gettype($array_test));//检测数组
echo "<br/>";
var_dump(gettype($string_test));//检测字符串
echo "<br/>";
var_dump(gettype($int_test));//检测数组
echo "<br/>";
var_dump(gettype($float_test));//检测字符串
?>

<?php
class class_test{};
$obj = new class_test();
$array_test = [1,2,3];
$string_test = '字符串';
$int_test = 1;
$float_test = 1.2;
var_dump(is_object($obj));//检测对象
echo "<br/>";
var_dump(is_array($array_test));//检测数组
echo "<br/>";
var_dump(is_string($string_test));//检测字符串
echo "<br/>";
var_dump(is_integer($int_test));//检测数组
echo "<br/>";
var_dump(is_float($float_test));//检测字符串
echo "<br/>";
var_dump(is_numeric("12"));//检测是否为数字字符串或数字
echo "<br/>";
?>

<?php
$array = [1,2,3];
echo $array;
?>

<?php
class person{};
$obj = new person();
echo $obj;
?>

<?php
$true_value = true;
$false_value =false;
echo $true_value;
echo "<br/>";
echo $false_value;
?>

<?php
class class_test{
var $value = '我是变量';
public function fuc(){
echo '我是方法';
}
}
$obj = new class_test();
$array_test = [1,2,3];
$string_test = '字符串';
$int_test = 1;
$float_test = 1.2;
var_dump($obj);//检测对象
echo "<br/>";
var_dump($array_test);//检测数组
echo "<br/>";
var_dump($string_test);//检测字符串
echo "<br/>";
var_dump($int_test);//检测整型
echo "<br/>";
var_dump($float_test);//检测浮点型
echo "<br/>";
?>

<script type="text/javascript">
var global_variable = '全局变量' ;
function fuc(){
console.log(global_variable);
}
fuc();
</script>

<script type="text/javascript">
function fuc(){
var area_variable = '局部变量'
}
fuc();
console.log(area_variable);
</script>
<?php
//在这里我们试图在函数作用域内访问全局作用域的变量
$variable = '变量';
function fuc (){
echo $variable;
}
fuc();
?>
<?php
//在这里我们试图在全局作用域内访问函数作用域的变量
function fuc (){
$variable = '函数作用域中变量';
}
fuc();
echo $variable;
?>


<script type="text/javascript">
function addNum(value){
return value = value +1;
}
var my_value = 1;
addNum(my_value);
console.log(my_value);
</script>

<script type="text/javascript">
function change_obj_name(obj){
obj.name = '不是彭湖湾'
}
var my_obj = {name:'彭湖湾'};
change_obj_name(my_obj);
console.log(my_obj.name);
</script>

<?php
function add_num($value){
$value = $value + 1;
}
$num = 1;
echo $num.' 是修改前的num';
add_num($num);
echo "<br/>";
echo $num.' 是修改后的num';
?>

<?php
function add_num(&$value){
$value = $value + 1;
}
$num = 1;
echo $num.' 是修改前的num';
add_num($num);
echo "<br/>";
echo $num.' 是修改后的num';
?>
<script type="text/javascript">
var array1 =[1,2,3];
var array2 =[1,2,3];
console.log('两个数组是否相等?',array1 == array2);
console.log('两个数组是否恒等?',array1 == array2);
</script>

<?php
$array1 = [1,2,3];
$array2 = [1,2,3];
var_dump($array1 == $array2);
?>
<?php
$array1 = [1,2,3];
$array2 = [1,'2',3];
echo "数组相等 ";
var_dump($array1 == $array2);
echo "数组恒等";
var_dump($array1 === $array2);
?>

当一个JavaScripter初次进入PHP的世界,他将看到这样的风景的更多相关文章
- 【javascript/PHP】当一个JavaScripter初次进入PHP的世界,他将看到这样的风景
本文将从以下11点介绍javascript和PHP在基础语法和基本操作上的异同: 1.数据类型的异同 2.常量和变量的定义的不同,字符串连接运算符不同 3.对象的创建方法的不同 4.PHP与JS在变 ...
- 当React开发者初次走进React-Native的世界
RN千机变 1.技术体系问题 RN和React共用一套抽象层,相对于前端,RN其实更接近Node的运行环境 ReactNative =React +IOS +Android 看RN文档时,我会发现入门 ...
- 一个可能是世界上最全的 API 接口集合库开源项目
对于程序员来说,为自己的程序选择一些合适的API并不是那么简单,有时候还会把你搞得够呛,今天猿妹要和大家分享一个开源项目,这个项目汇集了各种开发的api,涵盖了音乐.新闻.书籍.日历等,无论你是从事W ...
- 精通Web Analytics 2.0 (5) 第三章:点击流分析的奇妙世界:指标
精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第三章:点击流分析的奇妙世界:指标 新的Web Analytics 2.0心态:搞定它.新的闪亮系列工具:是的.准备好了吗?当然 ...
- 【Bugly干货分享】一起用 HTML5 Canvas 做一个简单又骚气的粒子引擎
Bugly 技术干货系列内容主要涉及移动开发方向,是由Bugly邀请腾讯内部各位技术大咖,通过日常工作经验的总结以及感悟撰写而成,内容均属原创,转载请标明出处. 前言 好吧,说是“粒子引擎”还是大言不 ...
- 【移动适配】一个像素的border怎么实现
一个像素里复杂纷扰的世界 文 | 啃先生 Mar.3rd.2016 首发于微信公众号(啃先生) 上一篇发了<[移动适配]移动Web怎么做屏幕适配> 壹 | Fisrt 在CSS的世界里P ...
- 一起用HTML5 canvas做一个简单又骚气的粒子引擎
前言 好吧,说是"粒子引擎"还是大言不惭而标题党了,离真正的粒子引擎还有点远.废话少说,先看demo 本文将教会你做一个简单的canvas粒子制造器(下称引擎). 世界观 这个简单 ...
- NeHe OpenGL教程 第十课:3D世界
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 嵌入式Linux开发系列之一: 走进嵌入式Linux的世界
转载:http://www.ibm.com/developerworks/cn/linux/l-embed/part1/index.html 随着信息化技术的发展和数字化产品的普及,以计算机技术. ...
随机推荐
- js 操作属性
操作属性: 对象.setAttribute('属性名','值'); - 添加属性 对象.getAttribute('属性名'); - 获取属性值,如无此属性,那么返回null 对象.removeAtt ...
- Luogu2723丑数Humble Numbers【归并排序】
Luogu2723丑数Humble Numbers 题目背景 对于一给定的素数集合 S = {p1, p2, ..., pK},考虑一个正整数集合,该集合中任一元素的质因数全部属于S.这个正整数集合包 ...
- 老李分享:loadrunner操作mysql数据库
老李分享:loadrunner操作mysql数据库 在poptest测试开发工程师就业培训的课程中,针对一套商业系统进行性能测试,目标是mysql后台数据库的负载能力,在这里我把测试代码 ...
- Python第一天接触心得
最近想学Python,就开始看教程下载,官网是https://www.python.org/downloads/,最新版本是3.6.1, 注意:x86-64表示适用于windows 64位系统:x86 ...
- shiro基础学习(四)—shiro与项目整合
一.认证 1.配置web.xml 2.配置applicationContext.xml 在applicationContext.xml中配置一个bean,ID和上面的过滤器的名称一致. ...
- 【R.转载】apply函数族的使用方法
为什么用apply 因为我是一个程序员,所以在最初学习R的时候,当成"又一门编程语言"来学习,但是怎么学都觉得别扭.现在我的看法倾向于,R不是一种通用型的编程语言,而是一种统计领域 ...
- Python isinstance
语法:isinstance(object,type) 作用:来判断一个对象是否是一个已知的类型. 其第一个参数(object)为对象,第二个参数(type)为类型名(int...)或类型名的一个列表( ...
- kindeditor扩展粘贴图片功能&修改图片上传路径并通过webapi上传图片到图片服务器
前言 kindeditor是一个非常好用的富文本编辑器,它的简单使用我就不再介绍了. 而kindeditor却对图片的处理不够理想. 本篇博文需要解决的问题有两个: kindeditor扩展粘贴图片功 ...
- javaScript 基本类型之间转换
在Java中,基本类型之间的强制转换也不是这样的,比如,整数要转换成字符串,必须使用Integer.toString()静态方法或者String.valueOf()静态方法,把字符串转换为整数,必须使 ...
- 装饰器模式(Decorator)——深入理解与实战应用
本文为原创博文,转载请注明出处,侵权必究! 1.初识装饰器模式 装饰器模式,顾名思义,就是对已经存在的某些类进行装饰,以此来扩展一些功能.其结构图如下: Component为统一接口,也是装饰类和被装 ...