ホームページ  >  記事  >  php教程  >  PHP リテラシー: PHP を素早く学ぶ

PHP リテラシー: PHP を素早く学ぶ

WBOY
WBOYオリジナル
2016-06-21 08:57:211314ブラウズ

PHP 構文。 1.埋め込み方法: ASP の <% と同様に、PHP では になります。もちろん、自分で指定することもできます。

PHP 構文。

1.埋め込み方法:

ASP の <% と同様に、PHP では になります。もちろん、自分で指定することもできます。

2. 引用文献:

ファイルを参照するには、require と include の 2 つの方法があります。
requireの使用方法はrequire("MyRequireFile.php");となります。この関数は通常、PHP プログラムの先頭に配置され、PHP プログラムが実行される前に、まず require で指定されたファイルを読み込み、それを PHP プログラムの Web ページの一部にします。このようにして、よく使われる機能を Web ページに導入することもできます。

include は include(”MyIncludeFile.php”); のように使用されます。この機能は通常、フロー制御の処理部分に配置されます。 PHP プログラムの Web ページは、インクルード ファイルを読み取るときにのみ読み取ります。これにより、プログラムの実行処理を簡略化することができる。

3. アノテーション方法:

echo "これが最初の例です。n" // この例は C 構文のコメントです
; /* この例では複数行の
を使用しています コメント方法 */
echo "これは 2 番目の例です。n" ;

echo "これは 3 番目の例です。n"; # この例では UNIX シェル構文のアノテーションを使用します
?>

4. 変数の型:

$mystring = "私は文字列です";
$NewLine = "改行 n" ;
$int1 = 38 ;
$float1 = 1.732 ;
$float2 = 1.4E 2 ;
$MyArray1 = array( "子" , "Chou" , "寅" , "卯" );

ここで 2 つの疑問が生じます。1 つは PHP 変数が $ で始まること、2 つ目は PHP ステートメントが ; で終わることです。ASP プログラマはこれに適応できない可能性があります。これら 2 つの省略は、プログラム内のほとんどのエラーの原因となります。

5. 操作記号:

数学的演算: 記号の意味
追記
- 減算演算
* 掛け算
/ 分割操作
% 残りを受け取ります
貯める
– 減少

文字列操作:

演算子記号は 1 つだけあり、それは英語のピリオドです。文字列を連結して、新しい結合文字列を作成できます。 ASP の &
に似ている

$a = “PHP 4” ;
$b = “強力” ;
echo $a.$b;
?>
これには 2 つの疑問も生じます。1 つ目は、PHP の出力ステートメントは echo であるということです。2 つ目は、PHP では である可能性があります。

論理演算:

記号の意味
>
より大きい <= 以下
>= 以上
==
に等しい != は
と等しくありません && そして (そして)
そしてそして (そして)
または (または)
または、または (または)
xor 排他的論理和 (Xor)
! 違います(違います)

PHP プロセス制御

1. If..else ループには 3 つの構造があります

1 つ目は、if 条件のみを使用し、単純な判断として扱うことです。 「何かが起こったらどうするか」と解釈されます。構文は次のとおりです:

if (expr) { ステートメント }

expr は判定条件であり、通常は論理演算記号を判定条件として使用します。ステートメントは、条件を満たすプログラムの実行部分です。プログラムが 1 行のみの場合は、中括弧 {} を省略できます。

例: この例では中括弧が省略されています。

if ($state==1)ech​​o 「はは」 ;
?>

ここでの特別な注意は、= が等しいかどうかを判断するために == が使用されるということです。ASP プログラマーはよくこの間違いを犯す可能性があります (= は代入です)。

例: この例の実行部分は 3 行あり、中括弧は省略できません。

if ($state==1) {
エコー「はは;
」 エコー「
;
」 }
?>
2 番目のタイプは、if に加えて else 条件を追加するもので、「何かが起こった場合の対処方法、そうでない場合の解決方法」と解釈できます。構文は次のとおりです

if (expr) { ステートメント 1 } else { ステートメント 2 } 例: 上記の例をより完全なプロセスに変更します。 else を実行する命令は 1 行だけなので、中括弧を追加する必要はありません。

if ($state==1) {
エコー「はは」 ;
echo “
”;
}
それ以外{
echo 「へへ」;
echo “
”;
}
?>

3 番目のタイプは再帰的な if..else ループで、通常はさまざまな意思決定の判断で使用されます。複数の if..else ステートメントを組み合わせて処理します。

以下の例を直接見てください

if ( $a > $b ) {
echo 「a は b より大きい」 ;
elseif ( $a == $b ) {
echo "a は b に等しい" ;
} else {
echo 「a は b より小さい」 ;
}
?>

上記の例では、2 つの変数 a と b を比較するために 2 レベルの if..else ループのみを使用しています。このような再帰的な if..else ループを実際に使用する場合は、ループのレベルが多すぎると設計ロジックに問題が発生しやすくなったり、中括弧の欠落などがプログラムに不可解な問題を引き起こす可能性があるため、注意して使用してください。

2. for ループは 1 種類のみで、その構文は次のとおりです。

for (expr1; expr2; expr3) { ステートメント }

ここで、expr1 は条件の初期値です。 expr2 は判定条件であり、判定条件には通常論理演算子が使用されます。 expr3はステートメント実行後に実行される部分で、次のループ判定の条件を1つ追加するなど変更するために使用します。ステートメントは、条件を満たすプログラムの実行部分です。プログラムが 1 行のみの場合は、中括弧 {} を省略できます。

次の例は、for ループを使用して記述されています。

for ( $i = 1 ; $i <= 10 ; $i ) {
echo "これは ".$i." 番目のループです
}
?>

3. スイッチ ループは通常、複合条件判定を処理します。各サブ条件は case 命令の一部です。実際には、同様の if 命令を多数使用すると、スイッチ ループに合成できます。

構文は次のとおりです

switch (expr) { case expr1: ステートメント 2; デフォルト: ステートメント N;

expr 条件は通常、変数名です。 case の後の exprN は通常、変数の値を表します。コロン以降が条件に合致した実行部分となります。ループを抜け出すには必ず Break を使用してください。

switch (日付 (“D”)) {
ケース「月」:
echo "今日は月曜日です" ;
休憩;
ケース「火」:
echo "今日は火曜日です" ;
休憩;
ケース「水」:
echo "今日は水曜日です" ;
休憩;
ケース「木」:
echo "今日は木曜日です" ;
休憩;
ケース「金曜日」:
echo "今日は金曜日です" ;
休憩;
デフォルト:
echo 「今日は休日です」 ;
休憩;
}
?>

ここで注意が必要なのはbreakです。省略しないでください。省略しても問題ありません。

明らかに、上記の例で if ループを使用するのは非常に面倒です。もちろん、設計時に最も発生確率の高い条件を先頭に、最も発生確率の低い条件を最後に配置すると、プログラムの実行効率が向上します。上記の例では、発生確率は毎日同じなので、条件の順序を気にする必要はありません。

データベースの構築

ASP では、ACCESS データベースの場合は、ACCESS を直接開いて MDB ファイルを編集できます。SQL SERVER の場合は、Enterprise Manager を開いて SQL SERVER データベースを編集できます。 MY SQL のコマンドライン編集は初心者にとっては非常に面倒ですが、将来的には PHPMYADMIN をダウンロードしてインストールすることができます。

その使用法について話しましょう。

phpmyadmin と入力したら、まずデータベースを作成する必要があります。ここで簡体字中国語 (*) を選択し、左側で新しいデータベースを作成し、ここにデータベース名を入力して、[作成] をクリックします。

次に、左側のドロップダウン メニューで作成したデータベースを選択します。

以下

データベースショップに新しいテーブルを作成します:

名前:
フィールドの数:

にテーブル名と、考えられるフィールドのおおよその数を入力し (不足していても多すぎても問題ありません。後で追加することも、デフォルトで使用することもできます)、[実行] を押します。

その後、テーブルの作成を開始できます。
最初の列はフィールドの名前で、2 番目の列はフィールドのタイプを選択します:
私たちが一般的に使用するものは次のとおりです:
1) VARCHAR、テキスト型
2) INT、整数型
3) FLOAT、浮動小数点型
4) DATE、日付タイプ
5) 自動的に追加された ID はどこにあるのかと疑問に思うかもしれません。次の追加機能で INT タイプを選択し、auto_increment を選択するだけです。

テーブルを作成すると、左側に作成したテーブルが表示され、次のことができます。

1) 右側の構造を押します: 変更されたテーブル構造を表示します
2) 右側の [参照] を押します: テーブル内のデータを表示します
3) 右側の SQL を押します: SQL ステートメントを実行
4) 右側の挿入を押します: レコードの行を挿入します
5) 右側のクリアを押します: テーブル内のすべてのレコードを削除します
6) 右側の削除を押します: テーブルを削除

もう 1 つの非常に重要な機能はインポートとエクスポートです。プログラムとデータベースをローカルに作成したら、ASP の ACCESS の場合は、MDB ファイルを直接アップロードするだけです。はい、SQL SERVER の場合は、リモート サーバーに接続してインポートすることもできます。次に、MY SQL のすべての SQL ステートメントをエクスポートし、リモート サーバーの PHPMYADMIN に移動し、データベースを作成し、SQL キーを押して、コピーしたばかりのこのレベルによって生成されたすべての SQL ステートメントを貼り付けます。

データベースへの接続方法を学びましょう

PHP は単なる関数ライブラリです。豊富な関数により、PHP の一部が非常にシンプルになります。 PHP 関数マニュアルをダウンロードして、いつでも使えるようにしておくことをお勧めします。

MYSQL データベースへの接続について簡単に説明します。

1.mysql_connect

MySQL サーバー接続を開きます。
構文: int mysql_connect(string [ホスト名] [:ポート], string [ユーザー名], string [パスワード]); 戻り値: integer

この関数は、MySQL サーバーへの接続を確立します。すべてのパラメータは省略できます。この関数をパラメータなしで使用する場合、hostname パラメータのデフォルト値は localhost、username パラメータのデフォルト値は PHP 実行プロセスの所有者、password パラメータは空の文字列になります (つまり、パスワードはありません)。パスワード)。パラメータ hostname の後にコロンとポート番号を追加して、MySQL への接続に使用するポートを指定できます。もちろん、データベースを使用する場合は、早めに mysql_close() を使用して接続を閉じるとリソースを節約できます。

2.mysql_select_db

データベースを選択します。
構文: int mysql_select_db(string データベース名, int [リンク識別子]); 戻り値: integer

この関数は、後続のデータ クエリ処理 (クエリ) のために MySQL サーバー内のデータベースを選択します。成功した場合は true、失敗した場合は false を返します。

最も単純な例は次のとおりです:
$conn=mysql_connect (“127.0.0.1″, “”, “”);
mysql_select_db("ショップ");
MY SQL データベースに接続し、SHOP データベースを開きます。実際のアプリケーションでは、エラー判断を強化する必要があります。

データの読み取り

最初に 2 つの関数を見てみましょう:
1.mysql_query
クエリ文字列を送信します。 構文: int mysql_query(string query, int [link_identifier]); 戻り値: integer

この関数は、関連する処理または実行を実行するために MySQL のクエリ文字列を送信します。 link_identifier パラメーターが指定されていない場合、プログラムは最後に開かれた ID を自動的に検索します。クエリ文字列が UPDATE、INSERT、DELETE の場合、戻り値は true または false になります。クエリ文字列が SELECT の場合、新しい ID 値が返されます。 false が返された場合、実行が成功したことを意味するわけではありません。戻り値はありませんが、クエリ文字列にエラーがあります。

2. mysql_fetch_object はクラス データを返します。 構文: object mysql_fetch_object(int result, int [result_typ]); 戻り値: Class

この関数は、クエリ結果の結果をクラス変数に分割するために使用されます。結果にデータがない場合は、false 値が返されます。

簡単な例を見てみましょう:
$exec=”ユーザーから * を選択”;
$result=mysql_query($exec);
while($rs=mysql_fetch_object($result))
{
echo “ユーザー名:”.$rs->ユーザー名.”
”;
}
?>
もちろん、ユーザー テーブルにはユーザー名フィールドがあり、ASP の
に似ています。 exec=”select * from user”
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
do while not rs.eof
response.write "ユーザー名:"&rs("ユーザー名")&"
"
rs.movenext
ループ
%>
もちろん、最初にデータベースに接続する必要があります。require_once('conn.php'); と、前回説明したデータベースに接続するためのコードが conn.php に含まれています。

データの追加、削除、変更

mysql_query($exec);
このステートメントだけですべての操作を実行できます。違いは $exec SQL ステートメント

です。

追加: $exec="テーブル名 (item1,item2) の値に挿入 ('".$_POST['item1']."',".$_POST['item1'].")";

削除: $exec="テーブル名から削除...";

変更: $exec="update tablename set item1=’".$_POST['item1']."' where …";

この時点で、 の場合のフォームと PHP 変数の転送について説明する必要があります。
フォームが POST で送信された場合、フォーム ファイルの処理時に $_POST['item1'] を使用して変数値を取得できます。同様に、GET で送信された場合は $_GET['item1']<🎜 になります。 >

とても簡単なことではありませんか?ただし、SQL ステートメントが非常に長く、.connection 文字または文字フィールドを囲む ' が欠落している可能性があるため、通常 $exec には問題が発生します。

mysql_query($exec); ステートメントをコメントアウトし、代わりに echo $exec を使用して $exec を出力し、正しいかどうかを確認します。それでも $exec でエラーを検出できない場合は、この SQL ステートメントをコピーして phpmyadmin で実行すると、エラー メッセージが表示されます。また、機密性の高い文字列をフィールド名として使用しないでください。使用しないと、日付などの問題が発生する可能性があります。変数やフィールドに名前を付けるときは、小さなルールに従うとよい場合もあります。初心者はその重要性を無視しないでください。

SESSIONの使用

SESSION には多くの機能がありますが、最も一般的に使用される機能は、サイト内のページ間での変数の転送です。ページの先頭では、SESSION

を開くために session_start() が必要です。 次に、SESSION 変数を使用して値を割り当てることができます: $_SESSION['item']=”item1″; だけで値を取得できます。これは非常に簡単です。たとえば、SESSION 変数が空かどうかを判断するために、ここでいくつかの関数を使用できます。 empty($_SESSION['inum']) は true または false を返します。

下面综合一下前面所说的我们来看一个登陆程序,判断用户名密码是否正确。
登陆表单是这样:login.php





处処理文件是样
require_once(’conn.php’);
session_start();
$username=$_POST['username'];
$password=$_POST['パスワード'];
$exec=”select * from admin where username=’”.$username.”‘”;
if($result=mysql_query($exec))
{
if($rs=mysql_fetch_object($result))
{
if($rs->パスワード==$パスワード)
{
$_SESSION['管理者名']=$ユーザー名;
header(”location:index.php”);
}
それ以外
{
echo "<script>alert('パスワードチェックエラー!');location.href='login.php';</script>";
}
}
それ以外
{
echo "<script>alert('ユーザー名チェックエラー!');location.href='login.php';</script>";
}
}
それ以外
{
echo "<script>alert('データベース接続エラー!');location.href='login.php';</script>";
}

?>

conn.php は次のとおりです:
$conn=mysql_connect (”127.0.0.1″, “”, “”);
mysql_select_db(”ショップ”);
?>

$_SESSION['adminname']=$username;ため、私はこの書き込みが可能かどうか登録するかどうかの文章:checkadmin.asp
session_start();
if($_SESSION['管理者名']==”)
{
echo "<script>alert('最初にログインしてください');location.href='login.php';</script>";
}
?>

做一分页显示

リンクは、SQL 句内の制限に達するまでに表示される承認を制限するものです。現在の承認のページ数が 1 つ必要であり、また、共有の承認数 $num も必要です。

$page については、私がいない場合は = 0、$execc=”select count(*) from tablename “;

$resultc=mysql_query($execc);
$rsc=mysql_fetch_array($resultc);
$num=$rsc[0];

これは记录总数を取得できます

ceil($num/10))結果一页10记录の话、これは完全な数です

したがってこれを写すことができます

if(empty($_GET['page']))
{
$page=0;
}
それ以外
{
$page=$_GET['ページ'];
if($page if($page>=ceil($num/10))$page=ceil($num/10)-1;//ページは0から始まるので要-1
}

この样$exec はこれを写すことができます $exec=”select * from tablename limit “.($page*10).”,10″;

//一页は10记录的

最後に我们必要做的就是几个连接:

最初のページ
”>前のページ
”>次のページ
”>最後のページ

注意事项

1、注意不要漏了分号

2、注意不要漏了变量前の$
3、SESSION の使用時期注意不要遗漏session_start();

問題が発生した場合は、次の方法を採用できます:

1、SQL 句が出力された場合は、注釈が完了してから SQL 句が出力され、注意も注釈がその後に実行される SQL 句
2、变量が空の場合、大多数が位に伝達されていない場合、变量検査一下、検査一下の表の ID と名前
を出力します。 3、データベース接続が失敗している場合は、MY SQL が正しく起動されているかどうか、および接続句
が漏洩しているかどうかを検査します。 4、注意缩进、区号不区配の错误を除外します

大きなウェブサイトを構築するとき、私たちの考えは、データの追加が直接成功するかどうかを考慮して、各フィールドの機能とテーブル間の関係を確認するために最初にデータを構築することでした。一般に、後台には修正と表示の追加が含まれており、後台には問題がなく、前台にも大きな問題はありません。安全性と容量にも注意が必要です。

PHP 上の転送ファイルと公開邮ファイルを使用します

上传文件表单必须上 enctype=”multipart/form-data”


以下見る一次番号:

$f=&$HTTP_POST_FILES['file'];

$dest_dir=’uploads’;//设定上传目录
$dest=$dest_dir.’/’.date(”ymd”).”_”.$f['name'];//我这里设置文件名日期加上文件名回避重复
$r=move_uploaded_file($f['tmp_name'],$dest);
chmod($dest, 0755);//上に転送されるファイルのプロパティを設定します

アップロードされたファイルの名前は date("ymd")."_".$f['name'] で、後でデータベースに挿入するときに使用できます。実際には、アップロードしたファイルは一時ディレクトリから保存されます。指定したディレクトリに移動します。 move_uploaded_file($f['tmp_name'],$dest);これがキーです

メールの送信については、mail() 関数を使用するとさらに簡単です

mail("受信者アドレス", "件名", "本文", "From: 送信者 rnReply-to: 送信者のアドレス");

ただし、WINDOWS では、mail() にはサーバーのサポートが必要です。一般に、外部 LINUX スペースも機能します。

ファイルのアップロードとメールの送信は、関数を呼び出すだけで、ASP よりもはるかに簡単なようです。 ASP は、FSO、JMAIL などのサーバーのさまざまなコンポーネントを使用する必要もあります。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。















Administrators Login
Username


Password