작업을 완료하는 9 가지 유용한 PHP 팁 및 코드 스니펫
본문
1. SQL 주입을 방지하기 위해 데이터베이스로 작업하는 경우 Prepared Statements 사용
출처 : https://stackoverflow.com/a/60496/9478774
$stmt = $pdo->prepare('SELECT * FROM employees WHERE name = :name');
$stmt->execute([ 'name' => $name ]);
foreach ($stmt as $row) {
// Do something with $row
}
이것은 연결을 설정하는 것입니다. 복사하여 붙여 넣을 수 있습니다.
$dbConnection = new PDO('mysql:dbname=dbtest;host=127.0.0.1;charset=utf8', 'user', 'password');
$dbConnection->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$dbConnection->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$preparedStatement = $db->prepare('INSERT INTO table (column) VALUES (:column)');
$preparedStatement->execute([ 'column' => $unsafeValue ]);
2. 동적 쿼리를 위한 준비된 문? if else를 사용하여 가능한 값을 제한하십시오.
출처 : https://stackoverflow.com/a/60496/9478774
if (empty($dir) || $dir !== 'DESC') {
$dir = 'ASC';
}
// only 2 possible options
3. 문자열에 특정 단어가 포함되어 있는지 확인
출처 : https://stackoverflow.com/a/4366748/9478774
// @ver below 8
$a = 'How are you?';
if (strpos($a, 'are') !== false) {
echo TRUE;
}
// @ver 8
if (str_contains('How are you', 'are')) {
echo TRUE;
}
4. array_key_exists() 또는 isset()로 정의되지 않은 인덱스 / 오프셋 처리
출처 : https://stackoverflow.com/a/4261200/9478774
//isset()
$value = isset($array['my_index']) ? $array['my_index'] : '';
//array_key_exists()
$value = array_key_exists('my_index', $array) ? $array['my_index'] : '';
5. $_POST, $_GET 또는 $_REQUEST 값을 얻으려면 isset ) 또는! empty()를 사용할 수 있습니다.
출처 : https://stackoverflow.com/a/4261200/9478774
$value = isset($_POST['value']) ? $_POST['value'] : '';
//empty()
$value = !empty($_POST['value']) ? $_POST['value'] : '';
//for PHP 7 and later
$value = $_POST['value'] ?? '';
6. PHP에서 오류 표시
출처 : https://stackoverflow.com/a/21429652/9478774
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
error_reporting(E_ALL);
7. 항상 require_once() 99,99 %를 기억하십시오.
include()와 비교할 때 require() 함수는 오류를 다르게 처리하고 스크립트 실행을 중지하고 include()는 오류에도 불구하고 스크립트를 계속합니다.
8. 리디렉션 하려는 경우 도우미 함수
출처 : https://stackoverflow.com/a/768472/9478774
function redirect($url, $statusCode = 303)
{
header('Location: ' . $url, true, $statusCode);
die();
}
9.이 스크립트로 JSON 반환
출처 : https://stackoverflow.com/a/4064468/9478774
<?php
$data = /** whatever you're serializing **/;
header('Content-Type: application/json');
echo json_encode($data);
- 이전글Mautic - 마케팅 자동화 소프트웨어 20.12.04
- 다음글Viewi - PHP로 풀 스택 및 완전 반응 형 사용자 인터페이스 구축 20.12.04