1. php とは
php (「php: hypertext preprocessor」) は、広く使用されているオープン ソースの汎用スクリプト言語であり、特に web 開発に適しており、html に埋め込むことができます。その構文は c、java、および perl を活用しており、習得が簡単です。この言語の主な目的は、web 開発者が動的に生成される web ページをすばやく作成できるようにすることですが、php はそれ以外にも使用できます。
簡単に言うと、php はさまざまなことができるスクリプト言語です。 ① サーバーサイドスクリプト ② コマンドラインスクリプト ③ デスクトッププログラムの作成
2. php を開始します
(1) php インタープリタをダウンロードします。実際、win 環境では、最も単純なソフトウェアは wamp です。ダウンロードすれば、すべてが手に入ります...
(2) win でもまだ必要なようです。mscvr110.dll リンク ライブラリと vc2012 ランタイム ライブラリはインストールできます。
(3)ide、私は恥知らずにも phpstorm を使用しました。金持ちになったら埋め合わせてあげるから...
user: newasp license: ===== license begin ===== 14617-12042010 00001xrvkhnpum!bd!vytgydcusnqt mm!hzwogg"dprwxzcbwsy8t91o7mru nvhtrbzv8o9mmolvtijchsse7i5jr! ===== license end ====
3. はじめに
(1) 単純な出力
<?php /** * created by phpstorm. * user: lenovo * date: 2014/9/28 * time: 14:51 */ // 输出php详细信息 echo phpinfo(); //c:\php-5.6.1-win32-vc11-x86\php.exe d:\dizzy\php_test\index.php //phpinfo() //php version => 5.6.1 // //system => windows nt lenovo-pc 6.1 build 7600 (windows 7 ultimate edition) i586 //build date => sep 24 2014 18:54:12 //compiler => msvc11 (visual c++ 2012) //architecture => x86 //configure command => cscript /nologo configure.js "--enable-snapshot-build" "--disable-isapi" "--enable-debug-pack" "--without-mssql" "--without-pdo-mssql" "--without-pi3web" "--with-pdo-oci=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--with-oci8-12c=c:\php-sdk\oracle\x86\instantclient_12_1\sdk,shared" "--enable-object-out-dir=../obj/" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--without-analyzer" "--with-pgo" //server api => command line interface
(2) 単純なフォーム処理
// 一个简单的html表单 <form action="action.php" method="post"> <p>姓名: <input type="text" name="name" /></p> <p>年龄: <input type="text" name="age" /></p> <p><input type="submit" /></p> </form> // action.php 接收表单数据, 使用超全局变量 %_post["name"] %_post["age"] <?php echo htmlspecialchars($_post['name']); ?> <?php echo (int)$_post['age']; ?> // 这便是最简单的表单提交,及数据接收
4. 基本的な文法
(1) php タグ
<?php echo "hello world!"; // 当文件为纯php时,最好在末尾删除php结束标记 //?>
(2) html から分離する
// 在一对开始和结束之外的内容,都会被php解释器忽略。也就是html标签和php代码混合的那种,跟jsp,asp一样... <p>this is going to be ignored by php and displayed by the browser.</p> <?php echo 'while this is going to be parsed.'; ?> <p>this will also be ignored by php and displayed by the browser.</p> // 使用条件,高级分离 <?php if ($expression == true): ?> this will show if the expression is true. <?php else: ?> otherwise this will show. <?php endif; ?>
(3) 命令区切り文字、コメント
php では、各ステートメントの後にディレクティブを終了するための区切り文字が必要です。
コメント: // または /* ... */ ただし、*/ は最も近いものと一致します。覚えておいてください。覚えて!
5. 入力
php は 8 つのプリミティブ データ型をサポートします。
<?php $a_bool = true; // a boolean $a_str = "foo"; // a string $a_str2 = 'foo'; // a string $an_int = 12; // an integer echo gettype($a_bool); // prints out: boolean echo gettype($a_str); // prints out: string // if this is an integer, increment it by four if (is_int($an_int)) { $an_int += 4; } // if $bool is a string, print it out // (does not print out anything) if (is_string($a_bool)) { echo "string: $a_bool"; } ?>
(1) ブール値 ブール型
true または false を指定でき、大文字と小文字は区別されません。
通常、0 でない場合は true です。
(2) 整数型
整数は、10 進数、16 進数、8 進数、または 2 進数で表すことができます。 8 進数の前に 0 (ゼロ) を付ける必要があり、16 進数の前に 0x を付ける必要があり、2 進数の前に 0b を付ける必要があります。
指定された数値が整数の範囲を超える場合、浮動小数点として解釈されます。同じ演算結果が整数の範囲を超えた場合も同様です。
php には整数の除算演算子がありません。1/2 は float 0.5 を生成します。整数にキャストすることも、round() を使用して丸めを改善することもできます。
echo (int)2.9; // 输出 2 echo round(2.555, 2) // 输出 2.56 // 决不要将未知的分数强制转换为 integer,这样有时会导致不可预料的结果。 <?php echo (int) ( (0.1+0.7) * 10 ); // 显示 7! ?>
(3) float 浮動小数点型(double)
浮動小数点型。浮動小数点数 float、倍精度 double、実数 real とも呼ばれます。
<?php $a = 1.234; $b = 1.2e3; $c = 7e-10; ?>
(4) 文字列の文字変換
文字列 string は一連の文字で構成され、各文字は 1 バイトに相当します。これは、php が 256 文字セットのみをサポートできるため、unicode をサポートしないことを意味します。
文字列の最大サイズは 2gb に達することがあります。
<?php $a = 123; echo '$a'; // 输出 $a echo "$a"; // 输出 123, 转义字符 '\' $str = <<<'eod' example of string spanning multiple lines using nowdoc syntax. eod; ?>
(5) 配列配列
php の配列は、実際には順序付けられたシーケンスです。マッピングはキーに値を関連付けるタイプです。
配列要素の値は他の配列とも言えるため、ツリー構造や多次元配列も許容されます。
<?php $array = array( "foo" => "bar", "bar" => "foo", ); // 自php 5.4 起 $array = [ "foo" => "bar", "bar" => "foo", ] // key 可以是 integer 或 string 类型 // key 值为可选项, 如果未指定,则使用之前用过最大的integer键名加上1作为新键名 ?> // 要修改某个值,通过其键名给该单元赋一个新值。 // 要删除某个键值对,对其调用 unset() 函数。
unset() を使用する場合、この時点では配列のインデックスは再作成されないことに注意してください。インデックスを再構築する必要がある場合は、array_values() 関数を使用できます。
配列の総数をカウントする: count() 関数を使用します
(6) オブジェクト
<?php class foo{ function do_foo(){ echo "doing foo."; } } // 用 new 实例化一个类 $f = new foo; $f->do_foo;
(7) リソース リソース タイプ
resource resource は、外部リソースへの参照を保持する特別な変数です。リソースは、特殊な機能を通じて作成および使用されます。
(8) null
特殊な null は、変数に値がないことを示します。 null 型で使用できる値は null のみです。
null として認識できる変数: ① null に割り当てられている ② まだ割り当てられていない ③ 未設定
(9) コールバック コールバック タイプ
php5.4 以降、callable 型を使用してコールバック型 callback を指定できるようになりました。
6. 変数
php の変数は、ドル記号 $ とその後に続く変数名で表されます。大文字と小文字を区別。
デフォルトでは、変数は常に値によって割り当てられます。
<?php $a = 1; // 值传递赋值 $b = $a // 引用赋值 $c = &$a // global 关键字 global ; $GLOBALS