Merhabalar,

Ufak bir bilgilendirme yapmak istiyorum PHP'de yeni ya da bu yöntemi izlemeyen arkadaşlarım ile ilgili.

Çok kötü kod örneği:
<?php
    if (!isset($_POST["event_title"])) {
        // Existence check
        $text = esc_html__("Request has been denied by website due to security reasons!", 'hpc');
        wp_send_json_error($text);
    }

    if (!isset($_POST["event_desc"])) {
        // Existence check
        $text = esc_html__("Request has been denied by website due to security reasons", 'hpc');
        wp_send_json_error($text);
    }

    if (!isset($_POST["event_date"])) {
        // Existence check
        $text = esc_html__("Request has been denied by website due to security reasons", 'hpc');
        wp_send_json_error($text);
    }
?>
Kötü kod örneği:
<?php
    if (!isset($_POST["event_desc"]) || !isset($_POST["event_title"] || !isset($_POST["event_date"]) ) ) {
        // Existence check
        $text = esc_html__("Request has been denied by website due to security reasons", 'hpc');
        wp_send_json_error($text);
   }
?>
Bunlar gerçekten çok sayıda client tarafından veri beklediğiniz durumlarda; oldukça karışık ve uzun doğrulamalar gerektirebilir. Bunun çokça yapıldığını görüyorum incelediğim sistemlerde.

Doğru kod örneği:
<?php
    $expected_post_values = array("nonce_ajax", "term_id", "event_title", "event_desc", "event_formatted_date", "event_time", "event_location", "event_place_id");

    foreach($expected_post_values as $value){
        // Expected value doesn't exist!
        if(!isset($_POST[$value])){
            $text = esc_html__("Request has been denied by website due to security reasons!", 'hpc');
            wp_send_json_error($text);
        }else{
            // Expected value is empty!
            if(sanitize_text_field($_POST[$value]) == ""){
                $text = esc_html__("Request has been denied by website due to security reasons!", 'hpc');
                wp_send_json_error($text);
            }
        }
    }
?>
Doğru kod örneğinde verilen kod kısaca beklenen verileri array içine alıp, ardından gereksiz onlarca satırla uğraşmadan; sadece array'i loop'lamamız ile bize pek çok satır kazandırabilir ve okunabilirliği gerçekten arttıracaktır.