gpt4 book ai didi

PHP 根据参数是否在数据库中编写条件语句

转载 作者:行者123 更新时间:2023-11-29 11:45:19 25 4
gpt4 key购买 nike

我正在开发一个wordpress插件。有一个在付款后发送到数据库的变量,即is payment,它被设置为1。如果尚未付款,则该变量不会发送到数据库数据库...因此存在一个实例,对于特定的帖子 ID,变量“is payment”不存在。

我现在尝试根据此变量是否存在来编写条件语句。

我想说的是,如果 wedding_form_final_submit = 1 并且没有 is payment 变量 - $status = foo.否则,如果 wedding_form_final_submit = 1 AND is payment = 1,$status = bar。

这是我到目前为止所拥有的:

if(get_post_meta($post_id,'wedding_form_final_submit', 1) && get_post_meta($post_id, 'ispayment',false)) {
$status = 'Form Complete';
} elseif(get_post_meta($post_id,'wedding_form_final_submit', 1) && get_post_meta($post_id, 'ispayment',true)) {
$status = 'Deposit Paid';
} else {
$status = '';
}

目前,这仅返回“表格完成”,但它适用于应返回存款已付的条目,应该显示“表格完成”的条目只是空白。

我相信我的问题是,对于我的第一个语句,变量 is payment 不存在。我该如何修改这个?

最佳答案

下面的代码可能会起作用,如果您要检索的帖子元不存在,您的变量将返回空

// get post meta value 'ispayment'
$paid = get_post_meta( $post_id, 'ispayment', true );

//Check where post meta exists and value is 1
if ( isset($paid) && $paid === '1' ) {
$status = 'Form Complete';
//If post meta doesn't exist or value is not 1.
} else {
$status = 'Deposit Paid';
}

//or shorter

$paid = get_post_meta( $post_id, 'ispayment', true );

$status = ( isset($paid) && $paid === '1' ) ? 'Form Complete' : 'Deposit Paid';

只需在其中添加其他代码

关于PHP 根据参数是否在数据库中编写条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35041313/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com