网站首页 文章专栏 Php 基本语法
Php 基本语法
创建于:2021-07-04 08:47:21 更新于:2024-12-04 08:24:10 羽瀚尘 547
Php Php



[toc]

基本代码构成(常量、变量与运算)

定义

弱类型
php $x=5; $y=6; $z=$x+$y;

字符串函数

  • strlen() 返回字符串长度

  • strpos(s, t) 返回s中t的位置,从0开始,没有返回FALSE

  • . 使用点号将两个字符串连接在一起

    数组

    数组的内容包含数组定义、修改内容、遍历等,使用一个遍历例子即可包含大部分内容。

    普通数组遍历

    php $cars=array("Volvo","BMW","Toyota"); $arrlength=count($cars); for($x=0;$x<$arrlength;$x++) { echo $cars[$x]; echo "<br>"; }

    遍历关联数组


    关联数组类似于python中的字典,生成带键值的数组。

    php $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43"); foreach($age as $x=>$x_value) { echo "Key=" . $x . ", Value=" . $x_value; echo "<br>"; }

    排序函数

    函数的使用类似于matlab的工具箱函数,只要将数组传进去即可。

  • sort() - 对数组进行升序排列

  • rsort() - 对数组进行降序排列

  • asort() - 根据关联数组的值,对数组进行升序排列

  • ksort() - 根据关联数组的键,对数组进行升序排列

  • arsort() - 根据关联数组的值,对数组进行降序排列

  • krsort() - 根据关联数组的键,对数组进行降序排列

    作用域

    PHP 有四种不同的变量作用域:

  • local

  • global

  • static

  • parameter
    是否在函数内可以区分局部变量与全局变量,在函数内访问全局变量需要声明global

    常量

    自定义常量

    php define("GREETING", "欢迎访问 Runoob.com"); echo GREETING; // 输出 "欢迎访问 Runoob.com"

    系统常量

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $_FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

  • PHP_EOL 换行符

    魔术常量

  • __LINE__ 当前行号

  • __FILE__ 文件名

  • __DIR__ 文件所在目录

  • __FUNCTION__ 函数名称

  • __CLASS__ 类的名称

  • __TRAIT__ 见这里

  • __METHOD__ 类的方法名

  • __NAMESPACE__ 当前的命名空间

    代码流程控制

    if..else

    php if (条件) { 条件成立时执行的代码; } elseif (条件) { elseif 条件成立时执行的代码; } else { 条件不成立时执行的代码; }

    switch

    php switch (n) { case label1: 如果 n=label1,此处代码将执行; break; case label2: 如果 n=label2,此处代码将执行; break; default: 如果 n 既不等于 label1 也不等于 label2,此处代码将执行; }

    for 循环

    见数组遍历

    while循环

    php <html> <body> <?php $i=1; while($i<=5) { echo "The number is " . $i . "<br>"; $i++; } ?> </body> </html>

    代码块的组织

    函数

    php <?php function add($x,$y) { $total=$x+$y; return $total; } echo "1 + 16 = " . add(1,16); ?>

    覆盖语法点:类的定义、成员变量、成员函数、类的实例化、成员变量、函数的调用、构造函数、析构函数、方法覆盖
    php <?php class Site { /* 成员变量 */ var $url; var $title; // 构造函数 function __construct( $par1, $par2 ) { $this->url = $par2; $this->title = $par1; } function __destruct() { echo "销毁 " . $this->title . "<br>"; } /* 成员函数 */ function setUrl($par){ $this->url = $par; } function getUrl(){ echo $this->url . '<br>'; } function setTitle($par){ $this->title = $par; } function getTitle(){ echo $this->title . '<br>'; } } class ex_site extends Site{ function __construct($arg1, $arg2) { parent::__construct($arg1, $arg2); // 子类构造方法不能自动调用父类的构造方法 echo "SubClass 类中构造方法" . '<br>'; } function getTitle(){ echo $this->title . ' 覆盖<br>'; } } $runoob = new Site('wenfeng wiki','wiki.stackoverflow.club'); $runoob->getTitle(); $runoob->getUrl(); // 调用成员函数,设置标题和URL $runoob->setTitle( "菜鸟教程" ); $runoob->setUrl( 'www.runoob.com' ); // 调用成员函数,获取标题和URL $runoob->getTitle(); $runoob->getUrl(); $ex_runoob = new ex_site('ex wenfeng wiki', 'ex wiki.stackoverflow.club'); $ex_runoob->getTitle(); ?>

    命名空间

    命名空间略复杂。