PHP的备忘录

PHP学习的笔记 (PHP de

关于链表的安排

连想数组可以有多层。
$array_promise_member = [
  'human'=>[
    'Emma' =>[
      'sex' =>'woman',
      'plant' => 'three',
      'age' => 11
    ],
    'Ray' =>[
      'sex' =>'men',
      'plant' => 'three',
      'age' => 12
    ],
    'Noman' =>[
      'sex' =>'woman',
      'plant' => 'three',
      'age' => 11
    ],
  ],
  'monster' =>[
    'Sonju' =>[
      'sex' =>'men',
      'age' => null,
    ],
    'anokata' =>[
      'sex' =>'men',
      'age' => null,
    ]
  ]
];

//連想配列の呼び出し方
echo $array_promise_member['human']['Emma']['age'];
//11


打印输出变量(Var_dump())。

可以查看变量的内容
echo '<pre>';
var_dump($array_promise_member);
echo '<pre>';
//echo '<pre>';を上下につけると見やすくなる

转变职业方法

PHP_EOL,EOT,和 ehco ‘
‘。
换行符,结束符和输出 ‘
‘。

使用if时的技巧。

由于使用else会降低可读性。

$here = 'farm';
if($here ==='farm'){
  echo '脱獄';
}else{
  echo'stay ease';
}

这样改写

if($here === 'farm'){
  echo '脱獄';
}

if($here !=='farm'){
  echo 'stay ease';
} 

判断数据是否存在

存在 / 为空 / 是空

从数据库中获取数据时,需要确认数据是否存在。


$test='1';

//empty構文を使った場合
if(!empty($test)){
  echo '変数は空ではありません';
}
//変数は空ではありません

三个运算符

如果条件满足,则为真,否则为假。


$rank = '特上';

$command = $rank === '特上' ? 'catch! Don't kiII' : 'KiII them';

echo $command;

关于foreach的事项

多维数组的foreach循环

  $members = [
    'Emma' =>[
      'kind' =>'human',
      'plant' => 'three',
      'age' => 11
    ],
    'Ray' =>[
      'kind' =>'human',
      'plant' => 'three',
      'age' => 12
    ],
    'Noman' =>[
      'kind' =>'human',
      'plant' => 'three',
      'age' => 11
    ]
  ];


//
foreach ($members as $member1) {
  foreach ($member1 as $member) {
    echo $member;
    echo '<br>';

  //キーも取りたい時は
foreach ($members as $member1) {
  foreach ($member1 as $member => $value) {
    echo $member . 'は' . $value . 'です。' ;
    echo '<br>';
  }
}

关于等号符号

只需要一种选项,将以下内容用中文进行本地化改写:

===か==か

在PHP中,无论变量的类型不同,它们都能被使用。
在PHP中,不仅变量的值相等,而且它们的类型也相等。

例如

$string_num = '10';//文字列

if($string_num == 10){//数値
  echo '等しい';
}
//等しい

成为了。

$string_num = '10';//文字列

if($string_num === 10){//数値
  echo '等しい';
}
//error

在使用 switch 的情况下,默认情况下会变为”==”。

$string_num = '10'

switch($string_num){
 case $string_num === 10:
  echo '等しい';
 case....

通过使用”if”,可以进行严谨的检查,但这样会使书写方式变得复杂,尽量避免使用”switch”。

常用的函数

文字串函数

    • strlen

 

    • 文字列の長さ(バイト数)を調べる関数

 

    • ※日本語の平仮名は1文字3バイト

 

    • https://www.php.net/manual/ja/function.strlen.php

 

    • md_strlen

 

    • 文字列の長さを調べる関数

 

    • ※日本語も1文字として計算される

 

    • https://www.php.net/manual/ja/function.mb-strlen.php

 

    • str_replace

 

    • 文字列を置換する関数

 

    • https://www.php.net/manual/ja/function.str-replace.php

 

    • explode

 

    • 文字列を分割する関数

 

    • https://www.php.net/manual/ja/function.explode

 

    • implode

 

    • 文字列を結合する関数

 

    • https://www.php.net/manual/ja/function.implode

 

    • preg_match

 

    • 正規表現に使用

 

    • →文字か数字か、郵便番号やメールアドレスが正しく入力されているかを確認する

 

    • https://www.php.net/manual/ja/function.preg-match

 

    • mb_substr

 

    • 指定文字列から文字列を取得する

 

    https://www.php.net/manual/ja/function.mb-substr

参考资料:PHP函数图解一览
http://html2php.starrypages.net/php/array-funcs

读取外部文件

需要和包含

要求 -> 当文件加载失败时,会出现错误
包括 -> 当文件加载失败时,会出现警告

<?php

require 'ファイル名';

//外部ファイルの関数や変数が使える

显示当前文件的绝对路径的魔法常量

echo __DIR__;

//  ~/~/~/main.php

外部ファイルを絶対パスで読み込みたい時は

require __DIR__ . '~/~/~/○○.php';

能够以…的方式阅读