ホームページ > バックエンド開発 > PHPチュートリアル > すべての開発者が手元に置いておくべき PHP コード スニペット

すべての開発者が手元に置いておくべき PHP コード スニペット

DDD
リリース: 2024-11-03 18:18:03
オリジナル
777 人が閲覧しました

PHP Code Snippets Every Developer Should Keep Handy

Web 開発の分野では、PHP は依然として最も人気のあるプログラミング言語の 1 つであり、何百万もの Web サイトやアプリケーションを動かしています。経験豊富な開発者でも、PHP を始めたばかりでも、便利なコード スニペットのコレクションがあれば、開発プロセスを大幅に効率化できます。この記事では、すべての開発者がツールキットに入れておくべき 10 個の重要な PHP コード スニペットを紹介します。

1. データベースに接続する

MySQL データベースへの接続を確立することは、PHP の基本です。安全に行う方法は次のとおりです:

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

ログイン後にコピー
ログイン後にコピー

ヒント:
データベース認証情報などの機密情報を保存するには、常に環境変数を使用してください。

2. データベースからデータを取得する

データベースからデータを取得することは、どのアプリケーションにとっても重要です。このスニペットを使用して、データを効果的にクエリします。

$sql = "SELECT * FROM table_name";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"] . " - Name: " . $row["name"] . "<br>";
    }
} else {
    echo "0 results";
}

ログイン後にコピー
ログイン後にコピー

ヒント:
SQL インジェクションから保護するには、プリペアド ステートメントを使用します。

3. データベースへのデータの挿入

データベースへのデータの挿入は一般的なタスクです。安全に行う方法は次のとおりです。

$sql = "INSERT INTO table_name (name, email) VALUES ('John Doe', 'john@example.com')";

if ($conn->query($sql) === TRUE) {
    echo "New record created successfully";
} else {
    echo "Error: " . $sql . "<br>" . $conn->error;
}

ログイン後にコピー

ヒント:
ユーザー入力をデータベースに挿入する前に、常に検証してサニタイズしてください。

4. データベース内のデータを更新する

レコードの更新も重要な操作です。このスニペットにより、簡単なデータ変更が可能になります。

$sql = "UPDATE table_name SET email='john.doe@example.com' WHERE name='John Doe'";

if ($conn->query($sql) === TRUE) {
    echo "Record updated successfully";
} else {
    echo "Error updating record: " . $conn->error;
}

ログイン後にコピー

ヒント:
影響を受ける行の数を確認して、更新が成功したことを確認してください。

5. データベースからのデータの削除

不要になったレコードを削除することは、クリーンなデータベースを維持するために非常に重要です。

$sql = "DELETE FROM table_name WHERE id=1";

if ($conn->query($sql) === TRUE) {
    echo "Record deleted successfully";
} else {
    echo "Error deleting record: " . $conn->error;
}

ログイン後にコピー

ヒント:
永久的なデータ損失を避けるために、deleted_at 列を追加して論理的な削除を実装します。

6. フォームの検証

基本的なフォーム検証は、データの整合性を確保し、ユーザー エクスペリエンスを向上させるために不可欠です。

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = trim($_POST["name"]);
    if (empty($name)) {
        echo "Name is required";
    }
}

ログイン後にコピー

ヒント:
ユーザー入力のサニタイズと検証には PHP フィルターを使用します。

7. メールの送信

電子メールの送信は、PHP の mail() 関数を使用して簡単に実現できますが、機能を追加するには、PHPMailer などのライブラリの使用を検討してください。

$to = "recipient@example.com";
$subject = "Subject";
$message = "Hello!";
$headers = "From: sender@example.com";

mail($to, $subject, $message, $headers);

ログイン後にコピー

ヒント:
信頼性の高い電子メール配信のために SMTP 設定を構成します。

8. 配列が空かどうかを確認する

配列が空かどうかを確認すると、アプリケーション ロジックのエラーを回避できます。

if (empty($array)) {
    echo "Array is empty.";
}

ログイン後にコピー

ヒント:
特に空の配列と null 値の両方をチェックする場合は、明確にするために count($array) === 0 を使用します。

9. セッションの操作

ユーザー セッションの管理は、多くのアプリケーション、特にユーザー認証にとって重要です。

$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "database";

$conn = new mysqli($servername, $username, $password, $dbname);

if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}

ログイン後にコピー
ログイン後にコピー

ヒント:
セッションのハイジャックを防ぐために、ログイン時にセッション ID を再生成します。

10. パスワードのハッシュ化

パスワードを安全に保存することは、どのアプリケーションにとっても重要です。ハッシュには PHP の組み込み関数を使用します。

$sql = "SELECT * FROM table_name";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    while ($row = $result->fetch_assoc()) {
        echo "id: " . $row["id"] . " - Name: " . $row["name"] . "<br>";
    }
} else {
    echo "0 results";
}

ログイン後にコピー
ログイン後にコピー

ヒント:
パスワードの管理には常にpassword_hash()とpassword_verify()を使用してください。

重要な PHP コード スニペットのコレクションをすぐに使えるようにすると、開発者としての効率と有効性が大幅に向上します。データベース操作の処理、フォームの検証、セッションの管理のいずれの場合でも、これらのスニペットはプログラミング ツールキットの貴重なツールとして機能します。これらのテクニックをワークフローに組み込むことで、堅牢で安全なアプリケーションをより迅速に構築できます。より包括的なソリューションや専門家の指導をお探しの場合は、英国の PHP 開発サービスに連絡すると、プロジェクトを次のレベルに引き上げるのに必要なサポートを提供できます。

以上がすべての開発者が手元に置いておくべき PHP コード スニペットの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート