這可能是一個重複的問題,但是...我讀到這裏的幾個答案,並在約類的屬性(變量)和如何申報他們php.net的信息,但我不能成功應用這些知識。更確切地說,我不能將一個變量從一個函數傳遞給這個類中的另一個變量。我的課是爲Wordpress構建的,其示意圖如下所示。所有函數的運行順序與它們在該類中的順序相同。在getForm()
官能團與交ID可變$_POST['postid']
被接收,並且與該ID後取。我需要的是將帖子ID傳遞給handleForm()
函數,但我失敗了。每次我嘗試一些東西時,都會收到一條消息,說明我的變量未被聲明。如何在這堂課中正確做到這一點?共享變量
class WPSE_Submit_From_Front {
function __construct() {
...
add_action('template_redirect', array($this, 'handleForm'));
}
function post_shortcode() {
...
}
function getForm() {
if('POST' == $_SERVER['REQUEST_METHOD'] && isset($_POST['postid'])) {
$post_to_edit = array();
$post_to_edit = get_post($_POST['postid']);
// I want to use the $post_to_edit->ID or
// the $_POST['postid'] in the handleForm() function
// these two variables have the same post ID
}
ob_start();
?>
<form method="post">
...
</form>
<?php
return ob_get_clean();
}
function handleForm() {
...
}
}
new WPSE_Submit_From_Front;
_class_是大寫的。 $ POST不是一個有效的PHP數組($ _POST是),如果沒有設置$ POST ['id'],該怎麼辦? – pavlovich
恭喜,你指出了一些錯別字,讓我編輯現在 – Kisaragi