Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php函数返回时没有值_Php_Arrays_Wordpress - Fatal编程技术网

Php函数返回时没有值

Php函数返回时没有值,php,arrays,wordpress,Php,Arrays,Wordpress,我有这张表(wp\U商业\U订单\U项目元): 和此表(wp\U商业\U订单\U项目): 我正在使用一个函数(functions.php),它返回数组中的以下项目id: function retrieve_orders_ids_from_a_product_id( $product_id, $order_date ) { global $wpdb; $table_posts = $wpdb->prefix . "posts"; $table_items = $wpdb->pre

我有这张表(wp\U商业\U订单\U项目元):

和此表(wp\U商业\U订单\U项目):

我正在使用一个函数(functions.php),它返回数组中的以下项目id:

function retrieve_orders_ids_from_a_product_id( $product_id, $order_date ) {
global $wpdb;

$table_posts = $wpdb->prefix . "posts";
$table_items = $wpdb->prefix . "woocommerce_order_items";
$table_itemmeta = $wpdb->prefix . "woocommerce_order_itemmeta";

// Define HERE the orders status to include in  <==  <==  <==  <==  <==  <==  <==
$orders_statuses = "'wc-processing'";

# Requesting All defined statuses Orders IDs for a defined product ID
$orders_ids = $wpdb->get_col( "
    SELECT DISTINCT $table_items.order_id
    FROM $table_itemmeta, $table_items, $table_posts
    WHERE  $table_items.order_item_id = $table_itemmeta.order_item_id
    AND $table_items.order_id = $table_posts.ID
    AND $table_posts.post_status IN ( $orders_statuses )
    AND $table_itemmeta.meta_key LIKE '_product_id'
    AND $table_itemmeta.meta_value LIKE '$product_id'
    AND $table_itemmeta.meta_key LIKE 'order_date'
    AND $table_itemmeta.meta_value LIKE '$order_date'
    ORDER BY $table_items.order_item_id DESC"
);
// return an array of Orders IDs for the given product ID
return $orders_ids;
}
函数从产品id($product\U id,$order\U date)检索订单id{
全球$wpdb;
$table_posts=$wpdb->前缀“posts”;
$table\u items=$wpdb->prefix.“woocommerce\u order\u items”;
$table\u itemmeta=$wpdb->prefix.“woocommerce\u order\u itemmeta”;
//在此定义要包含在中的订单状态

 AND $table_itemmeta.meta_value LIKE 'order_date'
 AND $table_itemmeta.meta_value LIKE 'order_date'
应该是

 AND $table_itemmeta.meta_key LIKE 'order_date'
 AND $table_itemmeta.meta_key LIKE 'order_date'

好的,它有两个问题。首先:

应该是

 AND $table_itemmeta.meta_key LIKE 'order_date'
 AND $table_itemmeta.meta_key LIKE 'order_date'

第二个是总是刷新
$order\u date
,因为我的
foreach()
loop.

你能在phpmyadmin或Sequel Pro中运行sql语句吗?对其进行故障排除。尝试过。它运行了,但返回的结果是无效的。好的,没有订单日期,它工作并返回id。我想我知道我的问题出在哪里。是的,我修复了它,但仍然没有返回任何值