【PHP】PHP简介

摘要我总结了PHP的基本语法!如果有任何建议,请务必告诉我。

首先

<?php
//ここに入力していく
?>

通过这样的方式,可以将其作为PHP输出。

回声我将解释一下在PHP中相当重要的echo函数。

<?php
  echo 'Hello world'; 
?>

如果在echo后以半角空格分隔指定值,那么这些值将被输出。在php中,输出意味着将内容写入HTML。

而且,在PHP中,务必在句子末尾添加分号;变量被单引号”或双引号””包围时,会被视为字符串数据进行处理。顺便提一下,字符串数据在PHP中被称为string类型。

プログラミングにおいて型という概念は非常に大切なので後に解説します。

变量变量是一个可以暂时存储数据的容器的概念。

<?php
  $fruit = 'りんご';  $fruitという変数の中にりんごという値が入っている
?>

在PHP中,需要在变量名前加上$符号,并使用=将值赋给变量。
=符号并不表示等于,而是表示将右边的值赋给左边的变量。

现在,让我们尝试输出刚刚创建的变量。

<?php
  $fruit = 'りんご';
  echo $fruit;
?>

执行这个,就会变成这样。

1.りんご

创建的变量内容已经被展开并输出了。

如果将整数int类型储存在变量中,则可以直接进行计算。

<?php
 $test1 = 2;
 $test2 = 3;

 echo $test1+$test2;
?>

これを実行すると5が出力されます。
ちなみに変数を’や”で囲ってしまってはダメです。そうしてしまうと変数ではなく文字列として扱われてしまい、中身が出力されません。

模型的概念存在着像上述中出现的类似于string类型和int类型的“型”这个概念。

<?php
  echo 10+2*2;
?>

运行这段代码将输出值为14。整数类型int可以进行四则运算。
然而,如果用单引号或双引号括起来,它将变为字符串类型string,不会进行计算,而是作为字符串输出。

在PHP中,主要有8种不同类型的数据。

标量类型标量类型主要有四种

型 日本語型 英語説明文字列型string ’Hello’や’こんにちわ’などの文字列整数型integer1、2、3などの整数浮動小数点型float1.4や3.4などの小数論理型booleanTrueかFalse

多才多艺的复合型主要分为两种类型

型 日本語型 英語説明オブジェクト型object オブジェクト配列型array配列

特別类型特别型主要有两种类型。

型 日本語型 英語説明真偽型null nullリソース型resourceファイルやデータベースの接続など

如果
当满足条件时或者当不满足条件时,我们使用if语句来进行条件分支。

<?php
  if (bool型の値) {
      命令
 }
?>

当()内的值为真时,命令将被执行。现在让我们写一个简单的if语句。

<?php
  if (TRUE) {
     echo 'if文';
 }
?>

当运行如上所示的代码时,由于()内的条件为true,将输出if语句。

<?php
  if (TRUE) {
     $x = 1+2;
     echo $x;
  }
?>

在if语句的{}中,也可以输入变量。顺便提一下,如果()内的值为False,则该命令将被忽略。

<?php
  $a = TRUE;
  if ($a) {
     echo 'りんご'
?>

可以在括号()内输入变量。
而且,可以使用两个整数int类型来创建一个bool型,例如1<2,在if语句的()内。这被称为二元运算。

<?php
$a = 2;
$b = 1;  
if ($a>$b) {
    echo '$aは$bより大きい;
?>

<>=%+-等符号被称为比较运算符。
例如,1==2是不相等的,所以结果是False,但是在这里,我们看到两边都是int类型。然而,在php中,我们也可以进行int型和string型的比较,例如1==’1’。
让我们使用名为var_dump的函数来查看它将变成什么类型。

bool(true)

這樣的情況下,1 == ‘1’會返回 true。基本上,不建議進行不同型別的比較,例如數值和字符串的比較。
這是因為存在一種稱為隱式類型轉換的機制。
另外,還存在一種嚴格比較的方式,例如 1 === 1,使用三個等號進行嚴格比較。
=== 不會執行隱式類型轉換,且兩邊的型別必須相同,因此推薦使用 === 而不是 ==。

<?php
  $x = 4;
  if($x >= 0) {
     echo 'プラス';
  } else {
     echo 'マイナス';
  }
?>

执行此代码会输出一个加号。在此处出现了“else”的情况,但是只有在if语句的()内为False时,才会执行else中的代码。
根据上述情况,由于if的第一个条件为真,所以else没有被执行。
接下来,让我们看看有三个条件的情况。

<?php
  $x = 4;
  if($x > 0) {
     echo 'プラス';
  } elseif($x < 0) {
     echo 'マイナス';
 } else {
     echo 'ゼロ';
 }
?>

通过使用elseif语句,可以实现任意数量的条件分支。首先,在if语句中,如果条件为true,则输出正数;如果条件为false,则会执行elseif语句并输出负数。进一步地,如果elseif语句条件为false,则输出else语句中的零。
正因为如上例所示,无论有多少条件,只会有一个条件为true且被执行。

if语句可以写成双重的,虽然有点复杂。

<?php
 $x = 1;
 if ($x > 0) {
    if ($x % 2 === 0) {
       echo '正の偶数';
  } else {
       echo '正の奇数';
  }
 } elseif ($x < 0) {
    if ($x % 2 === 0) {
       echo '負の偶数';
  } else {
       echo '負の奇数';
  }
 } else {
       echo 'ゼロ';
 }
?>

执行上述操作会输出正奇数。

连续数组
关联数组是一种数据类型,可以将一个值与另一个值相关联并保持。它也被称为键值对类型。其中一个值被称为键(key),另一个值被称为值(value)。可以使用这个键来提取对应的值。

<?php
  $fruit = array (
      'apple' => 'りんご',
    'orange' => 'オレンジ'
  );
   echo $fruit ['apple'];
?>

在上述的例子中,”apple” 是键(key),”りんご” 是值(value)。通过指定键(“apple”),我们可以在`echo`中输出值(“りんご”)。

您还可以向关联数组中添加值。

<?php
  $fruit = array (
      'apple' => 'りんご',
    'orange' => 'オレンジ';
  );
 $fruit ['greap'] = 'ぶどう';
?>

通过这样做,将向名为$fruit的关联数组中添加一个名为greap的键和一个名为ぶどう的值。

基本上,最好指定整数或字符串作为键。如果是其他类型,可能会进行隐式类型转换,或者会出现错误。

关联数组可以省略键和=>进行写入。

<?php
  $fruit = array ('miura','kudou','simizu','okada');      
?>

让我们按照上述方式来写,从左到右依次分配从0开始的连续编号,这将成为键(key)。这种形式被称为数组,但准确来说是关联数组。让我们用var_dump来查看这个数组。

array(4) {[0]=>string(5)miura [1]=>string(5)kudou [2]=>string(6)simizu [3]=>string(5)okada}

可以看出,Miura按照从0开始的连续编号顺序排列。

顺便提一下,数组和关联数组的编写方式使用了array的形式,但也提供了一种使用[]符号来简化表示值的语法结构。

for循环当我们想要执行重复操作时,可以使用for循环。为了更好地理解,我将给出一个具体示例。

<?php
  for ($i = 0; $i < 10; $i++) {
      echo 'こんにちは';
  }
?>

当执行它时,”你好” 将被输出十次。当我们希望重复相同的操作时,可以使用 for 循环。
接下来,我将解释一下 for 循环的结构。

<?php
  for (初期化処理; 継続条件; 更新処理) {
    // 処理
?>

在循环处理开始之前,只会调用一次的是初始化处理过程。这是一个变量。
然后继续条件使用布尔类型。只要继续条件为true,就会执行循环处理。当继续条件的值变为false时,循环处理将停止。
在for循环的每次循环处理结束之后,会调用更新处理过程。

在前面的for循环中,每次输出“こんにちは”时都会调用更新处理,并将值逐渐加1给$i。当$i达到10时,继续条件不再满足,循环便停止了。

像$i++这样的形式被称为加法运算符或递增。

$i++;
$i = $i+1;
$i += 1;  ⇦ 複合代入演算子と呼ばれている

有很多不同的写法,但以上三个在意义上是相同的。
虽然写法不同,但拥有相同意思的被称为语法糖。

<?php
 for ($i = 0; $i <10; $i++) {
     $count = $i;
     echo "{$count}回目の繰り返しです。";
 }
?>

执行这个后是第0次重复。输出的是第1次,第2次到第10次的重复处理。
“在双引号后面用{}括起来变量,就称为变量展开,输出变量的内容。

中文中的翻译如下:
中断和继续

中文的翻译可以是:
break和continue都是用来控制循环的工具。当我们需要在循环中间停止执行时,我们使用break。

<?php
  $int = array(1, 2, 3, 4, -5, 6, 7, 8, 9);
   // 配列の要素数を取得する関数
 $num = count($int);
 
  $message = '含まれていません';

 for ($i = 0; $i < $num; $i++) {
     $value = $int[$i];
     if ($value < 0) {
        $message = '含まれています';
     break;
     }
  }
  echo $message;
?>

这个程序用于检查数组中是否包含负数。尽管一眼就可以看出是否包含负数,但在这里我们决定不知道。

如果在上述情况中有一个负数,就会停止处理并输出“包含”。当我们只想知道是否存在一个负数而不关心有多少个负数时,我们可以使用break来避免再次进行重复处理。

在循环过程中,当满足某个条件时,可以使用continue语句来跳过当前操作并进行下一轮循环处理。

<?php
 $int = array(1, 2, 3, 4, 5, 6, 7, 8, 9);
   // 配列の要素数を取得する関数
 $num = count($int);
 
  $sum = 0;

 for ($i = 0; $i < $num; $i++) {
     $value = $int[$i];
     if ($value % 2 === 1) {  ⇦ 奇数の時
        continue;  ⇦ スキップして次へ
     }
     $sum += $value;  ⇦ 偶数が足されていく
 }
  echo $sum;
?>

在上述例子中,这是一个计算数组中偶数值总和的程序。
首先,通过count函数将数组元素的数目赋值给$num。然后,将数组第$i个值赋给$value。
接下来,我们使用if语句编写程序,当$value是奇数时,跳过这个操作并进行下一个操作。
只有偶数才会被加入到$sum中,所以通过这个方式可以求得偶数的总和。

当文
虽然while循环与for循环执行相同的重复操作,但while循环比for循环更简单。

<?php
 while(継続条件{
     // 処理
 }
?>

与 for 循环类似,只要继续条件为真,就会执行重复处理。

<?php
 初期化式;
 while(継続条件{
     // 処理
   更新式
 } 
?>

因此,通过设置初始值和更新值来与for循环相同。如果需要编写复杂的初始值或复杂的更新值,则使用while循环更容易。

遍历循环在需要逐个提取关联数组内容时,可以使用foreach循环结构。

<?php
 foreach($連想配列 as $変数名) {
      //処理
 }
?>

通过这样的写法,可以逐个提取关联数组中的值,并将其分别赋给指定的变量,来执行这个过程。

<?php
 $int = [1, 2, 3, 4, 5];
 
 foreach($int as $value) {   $intの値が順番に取り出されて$valueに代入されていく
     echo $value;
 }
?>

实际上,可以使用foreach循环更简洁地编写用于检查是否包含负值的方法,而不是使用之前的for循环。

<?php
 $int = array(1, 2, 3, 4, -5, 6, 7, 8, 9);
 
  $message = '含まれていません';

 foreach($int as $value) {
     if($value < 0) {
        $message = '含まれています';
     break;
     }
 }
  echo $message;
?>

我认为,当你想要使用数组的值进行某些操作时,最好使用foreach来编写。
在上面的例子中,我们提取了数组的元素,但对于关联数组也可以使用它。

<?php
 $fruit = [
     'りんご' => 3,
     'ぶどう' => 2, 
     'みかん' => 4
 ];

 foreach ($fruit as $key => $value) {
     echo "{$key}の個数は{$value}です";
 }

?>

苹果、葡萄、橙子这三个键被赋值给$key,分别对应数值3、2、4,被赋值给$value。

函数
在中文中,函数是指给定一个数据,经过处理后返回另一个数据的过程。函数又分为两种类型,分别是内置函数和用户自定义函数。
内置函数是指内置在php中的函数。
用户自定义函数是指由程序员自己创建的函数。

尽管上面提到了几个函数,但是像count或者var_dump这样的函数后面要加括号传递数据来调用函数。
调用函数使用函数。

<?php
 $x = -15;
 $y = abs($x);   abs()という絶対値を呼び出す関数
 echo $y;
?>

在上述的例子中,使用函数abs()来调用值为-15的$x的绝对值。
将要调用的数据的值放入abs()内部。然后将返回的数据赋给$y。
通过输出$y,可以得到$x的绝对值的程序。

不需要记住所有的函数,从PHP官方函数参考手册中寻找自己想使用的函数的技巧也很重要。

接下来我将解释用户自定义函数。

<?php
 function 関数名($仮引数) {
   // 処理
   return 返り値;
 }
 関数名($実引数); ⇦ 変数だけではなく数値などでも良い
?>

使用function来定义函数。

<?php
 function add($x, $y) {
     $z = $x + $y;
     return $z;
 }
 $sum = add(15, 6);
 echo $sum;
?>

首先,使用function关键字来定义函数add。此时,形式参数$x和$y没有被赋值。
将$x和$y的总和赋值给$z。然后将$z作为返回值返回给用户。

实际参数的值15和6将被分别赋给虚拟参数$x和$y。然后,返回值$z的值将通过echo语句输出。

bannerAds