您的位置:首页 > 编程语言 > PHP开发

php笔记1(基础知识及php的输出结构)

2013-04-15 23:34 627 查看
php(Hypertext Preprocessor)超文本预处理语言,简言之就是服务端的脚本语言,我可以理解为服务端的javascript。这是php的百科地址http://baike.baidu.com/view/99.htm

下面的就简要谈一下php的一些基础知识:

1.写法,都知道php的写法有很多,其实推荐的当然是完整标签的写法就是如下:

<?php
echo "hello god";
?>


虽然php有很多短标记书写方式,但是都不支持,有时在特定的情况下php默认是不开启短标签的(公司的服务器上的php.ini中就配置为 short_open_tag = On)CentOS
的 php.ini 默认会关闭短开放标签的功能,其原因无非就是不安全,有可能跟其他的语法接口有冲突,比如跟xml的文件头<?xml version="1.0"?>可能会有冲突。

2.注释,注释其实就不用多少了,无非如下几种方式

<?php
//echo 'hello god';
?>
<?php
#echo 'hello god'; #shell格式
?>
<?php
/*
echo 'hello god';
*/

?>


3.php的输出函数

void echo ( string
$arg1
[, string
$...
]
)
输出所有参数。
echo 不是一个函数(它是一个语言结构), 因此你不一定要使用小括号来指明参数,单引号,双引号都可以。 echo (不像其他语言构造)不表现得像一个函数,
所以不能总是使用一个函数的上下文。 另外,如果你想给 echo 传递多个参数, 那么就不能使用小括号。

int print ( string
$arg
)
总是返回 1

输出
arg

print 实际上不是一个函数(它是一个语言结构),因此你可以不必使用圆括号来括起它的参数列表。

int printf ( string
$format
[, mixed
$args
[, mixed
$...
]]
) 返回输出字符串的长度。

依据
format
格式参数产生输出。

bool print_r ( mixed
$expression
[, bool
$return
]
)

Note: 参数
return
是在
PHP 4.3.0 的时候加上的

print_r() 显示关于一个变量的易于理解的信息。如果给出的是 stringintegerfloat,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。
记住, print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。
如果想捕捉 print_r() 的输出,可使用
return
参数。若此参数设为
TRUE
print_r() 将不打印结果(此为默认动作),而是返回其输出。

<?php
$b = array ('m' => 'monkey', 'foo' => 'bar', 'x' => array ('x', 'y', 'z'));
$results = print_r ($b, true); //$results 包含了 print_r 的输出结果
?>


var_dump — 打印变量的相关信息

void var_dump ( mixed
$expression
[, mixed
$...
]
)

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。
var_export — 输出或返回一个变量的字符串表示

mixed var_export ( mixed
$expression
[, bool
$return
]
)

此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的
PHP 代码。
您可以通过将函数的第二个参数设置为
TRUE
,从而返回变量的表示。
比较 var_export()var_dump().
<?php
$a = array (1, 2, array ("a", "b", "c"));
var_export ($a);

/* 输出:
array (
0 => 1,
1 => 2,
2 =>
array (
0 => 'a',
1 => 'b',
2 => 'c',
),
)
*/

$b = 3.1;
$v = var_export($b, TRUE);
echo $v;

/* 输出:
3.1
*/
?>


<?php
$a = array(1, 2, array("a", "b", "c"));
var_dump($a);
/*
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
}
}

*/
?>

<?php

$b = 3.1;
$c = true;
var_dump($b, $c);
/*
float(3.1)
bool(true)
*/
?>


1.echo "str";   //可以输出多个字符串,无返回值;
2.print(); //打印,只可以同时输出一个字符串、一个参数,需要圆括号,有返回值 true/false;
3.die();//1{先输出内容,然后退出程序。常用在链接服务器和数据库}
4.printf('var1','var2');var1是格式,var2是输出的变量
{%s按字符串,%d按整形,%b按二进制,%x按16进制,%o按八进制,%f按浮点型 }
例:
<?php
$var = 3.141592653;
//输出整数
printf(“%d”,$var);//结果是3
printf(“%f”,$var);//结果是:3.141;
?>
5.sprintf();//这个函数不能直接输出,而是先把值赋给一个变量。燃火输出变量.
<?php
$var = 100.001;
$a = sprintf("%d",$var);
echo $a; //100
?>
6.print_r(); 用于输出数组;
<?php
$arr = array{1,2,3,4,5,6,7};
print_r($arr);
?>
7.var_dump();
//输出变量的内容,类型或者字符串的内容,类型,长度。常用来调试;
<?php
$a = "hello world";
var_dump($a);//string(11)hello world;
?>

php中的die()和exit

经常看到这样的语句: $file = fopen($filename, 'r') or die("抱歉,无法打开: $filename");

  or在这里是这样理解的,因为在PHP中并不区分数据类型,所以$file既可以是int也可以bool,所以这样的语句不会报错。但其处理过程可能有些朋友不大明白。 其实在大多数的语言中, bool or bool这样的语句中,如果前一个值为真后一个值就不会再判断了。这里也是的,所以如果fopen函数执行正确的话,会返回一个大于0的int值(这其实就是"真"),后面的语句就不会执行了。如果fopen函数执行失败,就会返回false,那么就会判断后面的表达式是否为真了。 结果执行了die()之后,不管返回什么,程序都已经停止执行了,并且显示指定的出错信息,也就达到了调试的目的。
就这样。:)

  通常与错误管理一起使用的两个函数是die()和exit()(严格说来,它们是语言构造而不是函数,但是谁在意这些呢)。当在脚本中调用die()和exit()时,将会终止整个脚本。它们都可用于阻止脚本继续执行,而使得某些重要的操作(如建立一条数据库连接)不会发生。你还可以给die()和exit()传递一个将在浏览器中打印出来的字符串。

  通常可以看到在OR条件语句中使用die()和exit()。例如

  include('config.inc.php') OR die ('Could not open the file. ');

  在包含这样一行代码之后,如果PHP不能包含配置文件,将会执行die()语句,并且会打印could not open the file消息。

  !defined('CURSCRIPT') && define('CURSCRIPT', ");//意思是如果没定义CURSCRIPT常量,则定义CURSCRIPT为空.

  在全书和PHP手册中,你将会看到它的各种变体,因为它是一种处理错误的快捷方式(但可能处理过度),而无需使用自定义的错误处理程序。

其实die和exit是等价的,用来终止当前脚本!


PHP exit() 函数

定义和用法

exit() 函数输出一条消息,并退出当前脚本。

该函数是 die() 函数的别名。

语法

exit(status)

参数描述
status必需。规定在退出脚本之前写入的消息或状态号。状态号不会被写入输出。

说明

如果 status 是字符串,则该函数会在退出前输出字符串。

如果 status 是整数,这个值会被用作退出状态。退出状态的值在 0 至 254 之间。退出状态 255 由 PHP 保留,不会被使用。状态 0 用于成功地终止程序。

提示和注释

注释:如果 PHP 的版本号大于等于 4.2.0,那么在 status 是整数的情况下,不会输出该参数。

例子

<?php $site = "http://www.w3school.com.cn/"; fopen($site,"r") or [code]exit("Unable to connect to $site")
; ?>[/code]


PHP die() 函数

定义和用法

die() 函数输出一条消息,并退出当前脚本。

该函数是 exit() 函数的别名。

语法

die(status)

参数描述
status必需。规定在退出脚本之前写入的消息或状态号。状态号不会被写入输出。

说明

如果 status 是字符串,则该函数会在退出前输出字符串。

如果 status 是整数,这个值会被用作退出状态。退出状态的值在 0 至 254 之间。退出状态 255 由 PHP 保留,不会被使用。状态 0 用于成功地终止程序。

提示和注释

注释:如果 PHP 的版本号大于等于 4.2.0,那么在 status 是整数的情况下,不会输出该参数。

例子

<?php $site = "http://www.w3school.com.cn/"; fopen($site,"r") or [code]die("Unable to connect to $site")
; ?>[/code]

在csdn上看一篇关于 关于php中的“别名” 的文章,不错就查了一下die exit return 这三个常用的

die()停止程序运行,输出内容

exit是停止程序运行,不输出内容

return是返回值

die是遇到错误才停止

exit是直接停止,并且不运行后续代码,exit()可以显示内容。

return就是纯粹的返回值了,但是也不会运行后续代码

exit(0):正常运行程序并退出程序;

exit(1):非正常运行导致退出程序;

return():返回函数,若在主函数中,则会退出函数并返回一值。

其实die和exit没有那么多的区别,只是die比较常用于在错误处理上,而exit常常用于程序执行过程中终止时需要返回一个状态的情况。

详细说:

1. return返回函数值,是关键字; exit 是一个函数。

2. return是语言级别的,它表示了调用堆栈的返回;而exit是系统调用级别的,它表示了一个进程的结束。

3. return是函数的退出(返回);exit是进程的退出。

4. return是C语言提供的,exit是操作系统提供的(或者函数库中给出的)。

5. return用于结束一个函数的执行,将函数的执行信息传出个其他调用函数使用;exit函数是退出应用程序,删除进程使用的内存空间,并将应用程序的一个状态返回给OS,这个状态标识了应用程序的一些运行信息,这个信息和机器和操作系统有关,一般是 0 为正常退出,非0 为非正常退出。

6. 非主函数中调用return和exit效果很明显,但是在main函数中调用return和exit的现象就很模糊,多数情况下现象都是一致的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: