PHP发现之旅-1

来源:互联网 发布:淘宝用imei找到手机 编辑:程序博客网 时间:2024/06/17 13:43
1.php: “PHP: Hypertext Preprocessor”,超文本预处理器的字母缩写是一种被广泛应用的开放源代码的多用途脚本语言,它可嵌入到 HTML中,尤其适合 web 开发。以上是一个简单的回答,不过这是什么意思呢?请看如下例子:

Example #1 一个介绍性的范例

<html>
    <head>
        <title>Example</title>
    </head>
    <body>

        <?php
        
echo "Hi, I'm a PHP script!";
        
?>

    </body>

</html>


1.  <?php echo 'if you want to serve XHTML or XML documents, do like this'?>

2.  <script language="php">
        
echo 'some editors (like FrontPage) don't
              like processing instructions'
;
    
</script>

3.  <? echo 'this is the simplest, an SGML processing instruction'?>
    <?= expression ?> This is a shortcut for "<? echo expression ?>"


语法

一个字符串 通过下面的4种方法来定义:

  • 单引号
  • 双引号
  • heredoc 语法结构
  • nowdoc 语法结构 (自PHP 5.3.0以后)

单引号

定义一个字符串 的最简单的方法是用单引号把它包围起来 (标点符号 ')。

如果想要输出一个单引号,需在它的前面加个反斜线 ()。在单引号前或在字符串的结尾处 想要输出反斜线,输入两条 (\)。注意,如果在任何其它的字符前加了反斜线,反斜线将会被直接输出。

Note不像双引号 和heredoc语法结构, 在单引号字符串中的变量 和特殊含义的字符将不会 被替换。

<?php
echo 'this is a simple string';

// 可以录入多行
echo 'You can also have embedded newlines in 
strings this way as it is
okay to do'
;

// 输出: Arnold once said: "I'll be back"
echo 'Arnold once said: "I'll be back"';

// 输出: You deleted C:*.*?
echo 'You deleted C:\*.*?';

// 输出: You deleted C:*.*?
echo 'You deleted C:*.*?';

// 输出: This will not expand:   a newline
echo 'This will not expand:   a newline';

// 输出: Variables do not $expand $either
echo 'Variables do not $expand $either';
?>


双引号

如果字符串是包围在双引号(")中, PHP将对一些特殊的字符进行解析:

Escaped charactersSequenceMeaning换行 (LF or 0x0A (10) in ASCII)回车 (CR or 0x0D (13) in ASCII)水平方向的 tab(HT or 0x09 (9) in ASCII)v竖直方向的 tab (VT or 0x0B (11) in ASCII) (since PHP 5.2.5)f换页 (FF or 0x0C (12) in ASCII) (since PHP 5.2.5)\反斜线$美金dollar标记"双引号[0-7]{1,3}符合该表达式顺序的字符串是一个八进制的字符x[0-9A-Fa-f]{1,2}符合该表达式顺序的字符串是一个十六进制的字符

数组

PHP 中的 数组 实际上是一个有序映射。映射是一种把 values 关联到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组,或列表(向量),散列表(是映射的一种实现),字典,集合,栈,队列以及更多可能性。数组元素的值也可以是另一个数组。树形结构和多维数组也是允许的。

解释这些结构超出了本手册的范围,但对于每种结构至少会提供一个例子。要得到这些结构的更多信息,建议参考有关此广阔主题的其它著作。



语法

定义数组 array()

可以用 array() 语言结构来新建一个 array。它接受任意数量用逗号分隔的 键(key) => 值(value) 对。

array(  key =>  value     , ...     )// 键(key) 可是是一个 整数(integer)字符串(string)// 值(value) 可以是任意类型的值
<?php
$arr 
= array("foo" => "bar"12 => true);

echo 
$arr["foo"]; // bar
echo $arr[12];    // 1
?>


对象

对象初始化

要创建一个新的对象 object, 使用 new 语句实例化一个类:

<?php
class foo
{
    function 
do_foo()
    {
        echo 
"Doing foo."
    }
}

$bar = new foo;
$bar->do_foo();
?>


基础

PHP 中的变量用一个美元符号后面跟变量名来表示。变量名是区分大小写的。

变量名与 PHP 中其它的标签一样遵循相同的规则。一个有效的变量名由字母或者下划线开头,后面跟上任意数量的字母,数字,或者下划线。按照正常的正则表达式,它将被表述为:'[a-zA-Z_x7f-xff][a-zA-Z0-9_x7f-xff]*'。

Note在此所说的字母是 a-z,A-Z,以及 ASCII 字符从 127 到 255(0x7f-0xff)。

Note$this 是一个特殊的变量,它不能被赋值。


PHP 也提供了另外一种方式给变量赋值:引用赋值。这意味着新的变量简单的引用(换言之,“成为其别名” 或者 “指向”)了原始变量。改动新的变量将影响到原始变量,反之亦然。

使用引用赋值,简单地将一个 & 符号加到将要赋值的变量前(源变量)。例如,下列代码片断将输出“My name is Bob”两次: <?php
$foo 
'Bob';              // 将 'Bob' 赋给 $foo
$bar = &$foo;              // 通过 $bar 引用 $foo
$bar "My name is $bar";  // 修改 $bar 变量
echo $bar;
echo 
$foo;                 // $foo 的值也被修改
?>


0 0
原创粉丝点击