Etwas seltsam mit Ajax

function __construct(){ $ajax = add_action('wp_ajax_my_action', array($this, 'ajax_respone')); var_dump($ajax); var_dump($ajax == '1234'); die(); } public function ajax_respone(){ $whatever = intval( $_POST['whatever'] ); return $whatever; } 

Es druckt:

bool (wahr)
bool (wahr)

Wie ist es möglich, dass '1234' oder nur 1234 gleich wahr ist? Hilft nur ===

Habe auch gerade gemerkt, dass der die() im nächsten Code nicht funktioniert

 function __construct(){ add_action('wp_ajax_my_action', array($this, 'ajax_respone')); } public function ajax_respone(){ $whatever = intval( $_POST['whatever'] ); var_dump($whatever); die(); } 

Dies bedeutet, dass die function nicht startet oder erst startet, wenn sie angefordert wird?

Solutions Collecting From Web of "Etwas seltsam mit Ajax"

add_action und add_filter geben immer true zurück.

Und ja, in PHP ist jeder String, der nicht leer ist oder “0”, dem booleschen Wert “wahr” gleich.

Und ich sehe nichts falsch mit Ihrem Code. Es ist süchtig nach wp_ajax_my_action, also müssen Sie einen Aufruf an die admin-ajax.php als authentifizierter Benutzer mit der my_action-Anfrage machen. Dann wird es sterben.