在php中满足if条件时,将复选框设置为“已选中”

I want to mark a checkbox as 'checked' automatically when an if condition is fulfilled. Here is an example of the if condition-

if($wp_session['tdwa_verification_checks'] < 2){

}

And the checkbox is-

<input class="input-text a-save" type="checkbox" id="chkboxclicked" name="tdwa-foreign-citizen" value="1">

I am trying with this but its not working.

if($wp_session['tdwa_verification_checks'] < 2){

    echo '<input class="input-text a-save" type="checkbox" id="chkboxclicked" name="tdwa-foreign-citizen" value="1" checked>'; 

}

I would appreciate if anyone can give me a clue. Thanks :)

A couple issues. One is that you're wrapping you're entire checkbox inside an if statement. Another is that it's very strange to check for a boolean value by comparing it to less than 2 as you'll generally compare it to equal 1. Another is that chkboxclicked is a very vague ID to say that least, you should probably change that to something more similar to the name. You should also add the closing slash since checkbox inputs are void elements.

Now, looking at your code, you're also checking $wp_session['tdwa_verification_checks'] but the input name is tdwa-foreign-citizen, are you sure that the key you're checking in $wp_session is correct?

Lastly, WordPress has a neat function called checked() that will compare and check values for you if applicable. This is how you should probably be using it in your markup:

<input class="input-text a-save" type="checkbox" id="tdwa-foreign-citizen" name="tdwa-foreign-citizen" value="1" <?php checked( $wp_session['tdwa_verification_checks'], 1 ); ?> />

you're printing the checkbox correctly, you have to verify to value for

$wp_session['tdwa_verification_checks']

you can find the value by doing

echo json_encode($wp_session['tdwa_verification_checks']);

once you find the value you can compare correctly