当前位置:首页 » 编程语言 » php运用

php运用

发布时间: 2024-12-31 19:14:47

⑴ 如何正确运用php json

从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。
1、json_encode()
该函数主要用来将数组和对象,转换为json格式。先看一个数组转换的例子:
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
上面代码的输出结果为:
{"a":1,"b":2,"c":3,"d":4,"e":5}
再看一个对象转换的例子:

复制代码代码如下:

$obj->body = 'another post';
$obj->id = 21;
$obj->approved = true;
$obj->favorite_count = 1;
$obj->status = NULL;
echo json_encode($obj);

以上代码的输出结果为:

复制代码代码如下:

{
"body":"another post",

"id":21,
"approved":true,
"favorite_count":1,
"status":null
}

由于json只接受utf-8编码的字符,所以json_encode()的参数必须是utf-8编码,否则会得到空字符或者null。当中文使用GB2312编码,或者外文使用ISO-8859-1编码的时候,这一点要特别注意。

2、索引数组和关联数组
PHP支持两种数组,一种是只保存"值"(value)的索引数组(indexed array),另一种是保存"名值对"(name/value)的关联数组(associative array)。
由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式。
比如,现在有一个索引数组:
$arr = Array('one', 'two', 'three');
echo json_encode($arr);
其输出结果为:
["one","two","three"]
如果将它改为关联数组:
$arr = Array('1'=>'one', '2'=>'two', '3'=>'three');
echo json_encode($arr);
结果就变了:
{"1":"one","2":"two","3":"three"}
注意,数据格式从"[]"(数组)变成了"{}"(对象)。
如果你需要将"索引数组"强制转化成"对象",可以这样写
json_encode( (object)$arr );
或者:
json_encode ( $arr, JSON_FORCE_OBJECT );
3、类(class)的转换
下面是一个PHP的类:

复制代码代码如下:

class Foo {

const ERROR_CODE = '404';
public $public_ex = 'this is public';
private $private_ex = 'this is private!';
protected $protected_ex = 'this should be protected';
public function getErrorCode() {
return self::ERROR_CODE;
}
}

现在,对这个类的实例进行json转换:

复制代码代码如下:

$foo = new Foo;
$foo_json = json_encode($foo);
echo $foo_json;

输出结果是:
{"public_ex":"this is public"}

可以看到,除了公开变量(public),其他东西(常量、私有变量、方法等等)都遗失了。
4、json_decode()
该函数用于将json文本转换为相应的PHP数据结构。下面是一个例子:

复制代码代码如下:

$json = '{"foo": 12345}';
$obj = json_decode($json);
print $obj->{'foo'}; // 12345

通常情况下,json_decode()总是返回一个PHP对象,而不是数组。比如:
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_mp(json_decode($json));

结果就是生成一个PHP对象:

复制代码代码如下:

object(stdClass)#1 (5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)

}

如果想要强制生成PHP关联数组,json_decode()需要加一个参数true:
$json = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
var_mp(json_decode($json),true);

结果就生成了一个关联数组:

复制代码代码如下:

array(5) {
["a"] => int(1)
["b"] => int(2)
["c"] => int(3)
["d"] => int(4)
["e"] => int(5)
}

5、json_decode()的常见错误
下面三种json写法都是错的,你能看出错在哪里吗?

复制代码代码如下:

$bad_json = "{ 'bar': 'baz' }";
$bad_json = '{ bar: "baz" }';
$bad_json = '{ "bar": "baz", }';

对这三个字符串执行json_decode()都将返回null,并且报错。

第一个的错误是,json的分隔符(delimiter)只允许使用双引号,不能使用单引号。第二个的错误是,json名值对的"名"(冒号左边的部分),任何情况下都必须使用双引号。第三个的错误是,最后一个值之后不能添加逗号(trailing comma)。
另外,json只能用来表示对象(object)和数组(array),如果对一个字符串或数值使用json_decode(),将会返回null。
var_mp(json_decode("Hello World")); //null

⑵ PHP是用来做什么的啊!

PHP是一种易于学习和使用的服务器端脚本语言,只需要很少的编程知识你就能使用PHP建立一个真正交互的WEB站点。

PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:HypertextPreprocessor)的缩写。PHP是一种HTML内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。

PHP独特的语法混合了C、Java、Perl以及PHP自创新的语法。它可以比CGI或者Perl更快速的执行动态网页。

PHP最初是由勒多夫在1995年开始开发的;现在PHP的标准由the PHP Group维护。PHP以PHP License作为许可协议,不过因为这个协议限制了PHP名称的使用,所以和开放源代码许可协议GPL不兼容。

⑶ 运用PHP可以做什么项目啊

运用PHP的话可以做的项目太多了,因为PHP也是属于后台语言的,而且可以做系统,可以做软件,也可以做网站的,所以说学习PHP的话可以写后台服务语言。

计算机俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。由硬件系统和软件系统所组成,没有安装任何软件的计算机称为裸机。

可分为超级计算机、工业控制计算机、网络计算机、个人计算机、嵌入式计算机五类,较先进的计算机有生物计算机、光子计算机、量子计算机、神经网络计算机。蛋白质计算机等。

当今计算机系统的运算速度已达到每秒万亿次,微机也可达每秒几亿次以上,使大量复杂的科学计算问题得以解决。例如:卫星轨道的计算、大型水坝的计算、24小时天气预报的计算等,过去人工计算需要几年、几十年,而现在用计算机只需几天甚至几分钟就可完成。

科学技术的发展特别是尖端科学技术的发展,需要高度精确的计算。计算机控制的导弹之所以能准确地击中预定的目标,是与计算机的精确计算分不开的。一般计算机可以有十几位甚至几十位(二进制)有效数字,计算精度可由千分之几到百万分之几,是任何计算工具所望尘莫及的。

随着计算机存储容量的不断增大,可存储记忆的信息越来越多。计算机不仅能进行计算,而且能把参加运算的数据、程序以及中间结果和最后结果保存起来,以供用户随时调用;还可以对各种信息(如视频、语言、文字、图形、图像、音乐等)通过编码技术进行算术运算和逻辑运算,甚至进行推理和证明。

计算机内部操作是根据人们事先编好的程序自动控制进行的。用户根据解题需要,事先设计好运行步骤与程序,计算机十分严格地按程序规定的步骤操作,整个过程不需人工干预,自动执行,已达到用户的预期结果。

超级计算机(supercomputers)通常是指由数百数千甚至更多的处理器(机)组成的、能计算普通PC机和服务器不能完成的大型复杂课题的计算机。超级计算机是计算机中功能最强、运算速度最快、存储容量最大的一类计算机,是国家科技发展水平和综合国力的重要标志。

超级计算机拥有最强的并行计算能力,主要用于科学计算。在气象、军事、能源、航天、探矿等领域承担大规模、高速度的计算任务。

在结构上,虽然超级计算机和服务器都可能是多处理器系统,二者并无实质区别,但是现代超级计算机较多采用集群系统,更注重浮点运算的性能,可看着是一种专注于科学计算的高性能服务器,而且价格非常昂贵。

一般的超级计算器耗电量相当大,一秒钟电费就要上千,超级计算器的CPU至少50核也就是说是家用电脑的10倍左右,处理速度也是相当的快,但是这种CPU是无法购买的,而且价格要上千万。

⑷ php如何运用if else分别执行三条代码并输出各自的结果

PHP中既有else if又有elseif,详细用法如下:
elseif,和此名称暗示的一样,是 if 和 else 的组合。和 else 一样,它延伸了 if 语句,可以在原来的 if 表达式值为 FALSE 时执行不同语句。但是和 else 不一样的是,它仅在 elseif 的条件表达式值为 TRUE 时执行语句。
例如以下代码将根据条件分别显示
a is bigger than b,a equal to b 或者a is smaller than b:

if($a>$b){
echo"aisbiggerthanb";
}elseif($a==$b){
echo"aisequaltob";
}else{
echo"aissmallerthanb";
}

在同一个 if 语句中可以有多个 elseif 部分,其中第一个表达式值为 TRUE(如果有的话)的 elseif 部分将会执行。在 PHP 中,也可以写成"else if"(两个单词),它和"elseif"(一个单词)的行为完全一样。句法分析的含义有少许区别,但是底线是两者会产生完全一样的行为。
elseif 的语句仅在之前的 if 和所有之前 elseif 的表达式值为 FALSE,并且当前的 elseif 表达式值为 TRUE 时执行。
必须要注意的是 elseif 与 else if只有在类似上例中使用花括号的情况下才认为是完全相同。如果用冒号来定义 if/elseif 条件,那就不能用两个单词的else if,否则 PHP 会产生解析错误。
举例:
/*不正确的使用方法:*/
if($a>$b):
echo$a."isgreaterthan".$b;
elseif($a==$b)://将无法编译
echo"Theabovelinecausesaparseerror.";
endif;


/*正确的使用方法:*/
if($a>$b):
echo$a."isgreaterthan".$b;
elseif($a==$b)://注意使用了一个单词的elseif
echo$a."equals".$b;
else:
echo$a."isneithergreaterthanorequalto".$b;
endif;

⑸ php是干什么用的

PHP,一个嵌套的缩写名称,是英文超级文本预处理语言(PHP:Hypertext Preprocessor)的缩写。PHP 是一种 HTML 内嵌式的语言,PHP与微软的ASP颇有几分相似,都是一种在服务器端执行的嵌入HTML文档的脚本语言,语言的风格有类似于C语言,现在被很多的网站编程人员广泛的运用。
PHP 独特的语法混合了C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行动态网页。PHP是全球范围内应用广泛的开发语言,PHP因其开发周期短、免费、稳定、安全、简单易学、跨平台性等因素入选全球五大受欢迎的编程语言!

⑹ PHP主要是用来做什么呢,和JAVA有什么区别是

PHP主要使用来做网站以及Web应用开发的。跟JAVA区别如下:

一、语言优势不同

1、PHP:即“超文本预处理器”,是一种通用开源脚本语言。在服务器端执行的脚本语言。

2、JAVA:是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念。


二、语法不同

1、PHP:语法混合了C、Java、Perl以及 PHP 自创的语法。

2、JAVA:作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。

三、特点不同

1、PHP:利于学习,使用广泛,主要适用于Web开发领域。

2、JAVA:具有简单性、面向对象、分布式、健壮性、安全性、平台独立与可移植性、多线程、动态性等特点。


热点内容
适合玩ftp的显示器 发布:2025-01-03 17:37:45 浏览:11
不是安卓手机光遇在哪里下载 发布:2025-01-03 17:35:41 浏览:38
冒泡游戏脚本大全 发布:2025-01-03 17:26:59 浏览:121
ftp服务器显示ftp根位于 发布:2025-01-03 17:26:36 浏览:610
linuxcmysql 发布:2025-01-03 17:01:57 浏览:226
python编译实现rc4算法 发布:2025-01-03 16:43:58 浏览:514
shell脚本当前时间 发布:2025-01-03 16:26:50 浏览:768
linux的机顶盒 发布:2025-01-03 16:19:13 浏览:876
shell脚本while循环语句 发布:2025-01-03 16:13:28 浏览:937
c在线编译器菜鸟 发布:2025-01-03 16:12:08 浏览:390