PHP的基本(PHP ji ben)
创建这个时在学习PHP的过程中。它更像是基础知识的备忘录。
变量
在声明中给予一个”$”头符号
最后需要一个分号 “;”。
・不允许以数字开头的变量名。
加法 (数学运算)
$x = 1;
$x = $x + 10;
echo $x;
//結果:11
与Ruby相似。
在任意的数值和对应的变量之间的运算中,可以使用赋值运算符。
+= :加上并赋值
-= :减去并赋值
*= :乘以并赋值
/= :除以并赋值
%= :取余并赋值
当加减为正负一时,可以使用增减运算符。
“++” 可以表示增加或加一。
“–” 可以表示减少或减一。
顺便提一下,由于位置的不同,意思可能会稍有不同,请记下来。
echo ++$x; //←+1してからechoする
echo $x++; //←echoしてから+1する
文字串
在撰写字符串时,应使用单引号 ” 或双引号 “” 将其括起来。
在使用「””」时,可以使用特殊字符如「¥n」或「¥t」。
可以进行变量展开。
例)
$name = 'Taro';
echo "こんにちは、{$name}さん";
//結果:こんにちは、Taroさん
文字串的合併
在合併時使用點「.」。
$language = 'PHP';
echo $language.'入門';
//結果:PHP入門
也可以使用代入运算符”.=”。
分岐条件
可以使用逻辑运算符“&&”和“||”。
如果
if (条件){
処理1;
}elseif{
処理2;
}else{
処理3;
}
轉換
switch(変数){
case 判定値1:
処理1;
break;
case 判定値2:
〜〜;
default:
〜〜;
}
排列
$names = array('John', 'Kate', 'Bob');
// [0] [1] [2] ←インデックス番号
$names[] = 'Mary';
$names[1] 'Taro'; //「Kate」が上書きされる。
顺次排列
使用array()等方法,创建关联数组并生成”「键」=>「值」”的元素。
$user = array('name' => 'Taro',
'age' => 25);
echo $user['name'];
//結果:Taro
$user['level'] = 'beginner'; //←キーと値のセットを追加
重复不断
给我一杯咖啡。
for ($i=1; $i<=100; $i++){
//初期化;ループ条件;変数の更新
echo $i; //処理
}
当
$i = 1; //初期化
while ($i<=100){ //ループ条件
echo $i; //処理
$i ++; //変数の更新
}
打破
中断循环的强制指令。
继续
只跳过当前周的指令,循环将继续。
如果要指定要跳过的层级数,请在”continue”后面写上”层级数”。
继续 3; ※「继续;」=「继续 1;」
对于每一个
foreach (配列 as 値変数) {
// ↑または連想配列
処理;
}
foreach (配列 as キー変数 => 値変数) {
// ↑または連想配列
処理;
}
函数
随机挑选一些可以在PHP中使用的函数。
· strlen(~~~); ←字符串的长度
・count(~~~); ←获取数组的元素个数
・rand(1,3); 返回一个介于1到3之间的随机整数。
・array_sum(~~~); ← 返回数组的总和值
・var_dump(~~~); ← 返回变量的类型和大小(值)
固定的数字
在声明常数时使用define()。变量名不能以数字开头。
定义(常量名称,值);
来自标签
<from action="URL" method="POST" >
//テキストボックス
<input type="text" name="email">
//入力データに名前をつける
<textarea name="content"></textarea>
//入力データに名前をつける //閉じタグが必要
//送信ボタン
<input type="submit" value="送信">
</from>
接收表单数据。
<? php echo $_POST['~~~']; ?>
使用「$_POST」
「$_POST」是一个关联数组,在 [ ] 内输入 name 属性
选择框
<select name="fruit">
<option value="apple">りんご</option>
・
・
</select>
只需要一个选项,将以下内容用中文进行本地化:
require_once
通过这个方法,只需读取一次另一个PHP文件。
~~~~~~~~~~~~;
~~~~~~~~~~~~;
<? php
require_once('menu.php');
~~~~~~~~~~;
?>
<? php
require_once('data.php');
~~~~~~~~~~;
?>
属性(在类内部)
class Menu{
public $name; //宣言
}
$ curry = new Menu(); //←インスタンス作成
$ curry->name = 'CURRY'; //←プロパティに値をセット
echo $curry->name;
//結果:CURRY
方法
class Menu{
public function hello(){
echo '私はMenuインスタンスです!';
}
}
$ curry = new Menu();
$ curry->hello(); //メソッドの呼び出し
//結果:私はMenuインスタンスです!
这件事
“$实例名称->属性名”
可以用「$this」进行替换。
构造函数 “__construct”
在创建实例(new)时自动执行的方法。(在 Ruby 中是 initialize 吗?)
class Menu{
public function __construct(){
// ↑newする時の引数を渡すことができる。
//処理;
}
}
类属性 shǔ
class Menu{
public static $count = 4;
//staticを付けることでクラスプロパティになる。
}
echo 'メニュー数'.Menu::$count.'品';
//アクセスするにはコロン2つ
自我
在访问属性类时,可以使用“self”变量在班级内部。
public function __construct(~~~){
//コンストラクタ
self::$count++;
//self はMenu クラスを意味する。
}
类方法
class Menu{
private static $count = 0;
public static function getCount(){
return self::$count;
//アクセスするにはコロン2つ
}
}
//呼び出し
echo Menu::getCount();
继承
class 子クラス名 extends 親クラス名{
}
实例 instanceof
可以判断实例是否为特定类的实例。
$ coffee = new Drink('COFFEE',....);
if ($coffee instanceof Drink){ //true
echo 'Drinkクラスのインスタンスです。'
}
if ($coffee instanceof Food){ //false
echo 'Foodクラスのインスタンスです。'
}
保护的 hù de)
・公共变量名;//←可从任何地方访问
・受保护的变量名; // 子类可以访问
・私有变量名;// 子类无法访问
父母
在覆盖的方法中,用于调用父类的同名方法。
class Drink extends Menuy{
//オーバーライドしたコンストラクタ(引数4つ)
public function __construct(~,~,~,~){
//オーバーライドされた、親クラスのコンストラクタ(引数3つ)の呼び出し
parent::__construct(~,~,~);
$this->type = $type;
}
}
将”foreach”嵌入到HTML中。
<?php $words = array('apple','banana','orange'); ?>
<?php foreach($words as $word): ?>
<p><?php echo $wodd ?></p>
<?php endforeach ?>
在使用foreach时,将”{ }”分别替换为”:”和”endforeach”并进行记录。
除了”endforeach”之外,还有”endif”、”endfor”等。