Php 如何在WP CLI命令中强制使用参数

Php 如何在WP CLI命令中强制使用参数,php,wordpress,command-line,wp-cli,Php,Wordpress,Command Line,Wp Cli,我想使用WP CLI删除商业订单 我有3个参数(产品id、开始日期、结束日期)。如何检查是否在命令中传递了所有3个参数 我怎么做这样的事 if ( ! empty( ALL THE ARGS ) ) { WP_CLI::success( "Success" ); } else { WP_CLI::error( "args missing" ); } 下面是我的代码 $delete_woo_orders = function( $a

我想使用WP CLI删除商业订单

我有3个参数(产品id、开始日期、结束日期)。如何检查是否在命令中传递了所有3个参数

我怎么做这样的事

if ( ! empty( ALL THE ARGS ) ) {
      WP_CLI::success( "Success" );
} else {
      WP_CLI::error( "args missing" );
}
下面是我的代码

$delete_woo_orders = function( $args,$assoc_args ) {

      WP_CLI::line( $assoc_args['product_id'] );
      WP_CLI::line( $assoc_args['start_date'] );
      WP_CLI::line( $assoc_args['end_date'] );

};
WP_CLI::add_command( 'delete_woo_orders', $delete_woo_orders );

这是我的命令:
wp delete\u woo\u orders--product\u id=1--start\u date=“some\u date”end\u date=“some\u date”
您可以尝试以下代码:-

if( defined( 'WP_CLI' ) && WP_CLI ) {
  function delete_order ( $args, $assoc_args ) {
     global $wpdb; 
     if( $assoc_args['product_id'] && $assoc_args['start_date'] && 
       $assoc_args['end_date'] ){ 
        WP_CLI::success( "all args passed" ); // Success Message
     }else{
        WP_CLI::error( "args missing" );  // Failed Message
     }
  }
  WP_CLI::add_command( 'delete_woo_orders', 'delete_order' );
}
我稍微修改了您的代码,检查了$assoc_参数是否有值,并显示了一条成功和错误消息