Php 我需要在WordPress语句(查询)中使用数组(';%s';,';%s';)还是已过时?

Php 我需要在WordPress语句(查询)中使用数组(';%s';,';%s';)还是已过时?,php,mysql,wordpress,Php,Mysql,Wordpress,请原谅我的无知,我一直在学习如何开发WordPress插件,我正在涉足数据库查询 同时,我在开发其中一个,我发现了一个查询的语法,实际上相同的概念有两次,以两种不同的方式编写: $wpdb->insert( $table_name, array( 'name' => $name, 'lat' => $lat, 'lng' => $lng, array('%s', '%s') ); $wp

请原谅我的无知,我一直在学习如何开发WordPress插件,我正在涉足数据库查询

同时,我在开发其中一个,我发现了一个查询的语法,实际上相同的概念有两次,以两种不同的方式编写:

$wpdb->insert(
    $table_name,
    array(
        'name' => $name,
        'lat'  => $lat,
        'lng'  => $lng,
        array('%s', '%s')
);

$wpdb->update(
    $table_name,
    array(
        'name' => $name,
        'lat'  => $lat,
        'lng'  => $lng,
    array('%s'),
    array('%s')
);
首先,我的问题是我是否需要数组(“%s”)来指定这是一个字符串(是一种绑定值以防止注入的方式吗?)或者我可以跳过它。第二,这两个查询之间有什么区别吗?第二个错了吗


提前谢谢。

首先,我的问题是我是否需要数组(“%s”)来指定这是一个字符串(是一种绑定值以防止注入的方式?),或者我可以跳过它。

在这两种语法中都可以避免格式化数组(数组(“%s”)。它是查询的可选参数。您可以从以下链接找到它:

(一)

(二)

其次,这两个查询之间有什么区别吗?第二个错误吗?


对于第二个问题,第一个查询将数据插入数据库,第二个查询将更新数据库中所有行的数据。如果要更新表中的所有数据,可以在此处避免使用where参数。

太好了!我的第二个问题实际上是:数组('%s','%s')和数组('%s')、数组('%s')之间是否有任何区别。你说得对,这是一个update语句,所以我的查询失败了是的,数组('%s','%s')和数组('%s')、数组('%s'))之间有区别。@WPDeveloper,OP在他们的问题中使用它是正确的。我收回了你对那个词的编辑。