小编Ava*_*lla的帖子

PHP print_r有效,但json_encode返回空

我的PHP代码看起来像这样:

$header = "Content-Type: application/json";
header($header);

// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {

    die("Connection failed: " . $conn->connect_error);

} 

$sql = "SELECT * ...";

$result = $conn->query($sql);

$array_1 = array();

if ($result->num_rows > 0) {

    // output data as array
    while($row = $result->fetch_assoc()) {

        array_push($array_1, $row);

    }
}

$conn->close();

print_r($array_1);
Run Code Online (Sandbox Code Playgroud)

这给了我以下输出:

Array
(
    [0] => Array
        (
            [user_email] => test@gmail.com
            [order_item_name] => Abonnement
        )

    [1] => Array
        (
            [user_email] => test@gmail.com …
Run Code Online (Sandbox Code Playgroud)

php mysql sql arrays json

7
推荐指数
1
解决办法
5655
查看次数

Mac OSX和Windows中不同的CSS(字体粗细).为什么font-weight呈现不同?

我遇到了一个问题,其中" font-weight "在不同的操作系统中出现不同,在我的WindowsMac OSX中.这些是如何呈现字体的一些示例:

  • Windows:

在此输入图像描述

  • Max OSX:

在此输入图像描述

相同的文本,相同的浏览器,但不同的操作系统.在Mac设备上,我检查了每个浏览器,包括Firefox,Opera,谷歌Chrome,Safari和网站显示相同.一旦我在Windows设备上打开网站,字体就会以" 大胆 "的方式显示,也就是说,文本显示为粗体,尽管我没有此类属性的CSS代码.我的自定义CSS如下:

html,
body,
div,
applet,
object,
iframe,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
ins,
kbd,
q,
s,
samp,
small,
strike,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
td,
input,
textarea {
  font-weight: 300 !important;
}
h1,
h2,
h5,
h6 {
  font-weight: 300 !important;
} …
Run Code Online (Sandbox Code Playgroud)

html css fonts operating-system cross-browser

6
推荐指数
1
解决办法
1928
查看次数

Wordpress SQL 查询产品 X 用户的名字和姓氏?

我正在创建一个 SQL 查询,我想在其中显示从 woocommerce 商店购买可下载产品的客户的全名和电子邮件。我正在寻找这样的东西:

user_id    first_name    last_name    user_email    order
---------------------------------------------------------
1          Peter         Jones        a12@gmail     Doc_1
Run Code Online (Sandbox Code Playgroud)

上表中,Doc_1代表产品名称,此时user_id = 1的客户可以下载Doc_1。对于wordpress用户,你知道该表wp_usermeta包含了用户的所有信息,如下所示:

umeta_id    user_id    meta_key    meta_value
---------------------------------------------
1           1          nickname    petjon123
2           1          first_name  Peter
3           1          last_name   Jones
...         ...        ...         ...
Run Code Online (Sandbox Code Playgroud)

该列表包含更多内容,包括电子邮件等。如果表格标题显示在彼此旁边而不是在彼此之上,那么meta_value[s]一切都会变得更加容易。我已经走到了这里,我的查询显示了,但我在获取 时遇到了问题。我的 SQL 查询如下所示:meta_key[s]first_namelast_namefirst_namelast_name

SELECT
  wp_usermeta.user_id,
  wp_usermeta.meta_value AS 'first_name',
  Wp_woocommerce_downloadable_product_permissions_1.user_email AS 'email',
  Wp_woocommerce_order_items_1.order_item_name AS 'order'
FROM Wp_woocommerce_order_items
     INNER JOIN Wp_woocommerce_downloadable_product_permissions
       ON Wp_woocommerce_order_items.order_id = Wp_woocommerce_downloadable_product_permissions.order_id,
     (Wp_woocommerce_order_items …
Run Code Online (Sandbox Code Playgroud)

mysql sql wordpress select woocommerce

6
推荐指数
1
解决办法
3287
查看次数

如何将时间列分别分组为 5 分钟间隔和最大值/最小值 SQL?

我有一个包含 +/- 30 秒间隔的日期时间列和包含 10 到 100 之间随机数的列的数据库。我的表如下所示:

datetime               value
----------------------------
2016-05-04 20:47:20    12
2016-05-04 20:47:40    44
2016-05-04 20:48:30    56
2016-05-04 20:48:40    25
2016-05-04 20:49:30    92
2016-05-04 20:49:40    61
2016-05-04 20:50:00    79
2016-05-04 20:51:20    76
2016-05-04 20:51:30    10
2016-05-04 20:51:40    47
2016-05-04 20:52:40    23
2016-05-04 20:54:00    40
2016-05-04 20:54:10    18
2016-05-04 20:54:50    12
2016-05-04 20:56:00    55
Run Code Online (Sandbox Code Playgroud)

我想要以下输出:

datetime               max_val    min_val
-----------------------------------------
2016-05-04 20:45:00    92         12
2016-05-04 20:50:00    79         10
2016-05-04 20:55:00    55         55
Run Code Online (Sandbox Code Playgroud)

之前,我甚至可以继续获得最大值和最小值,我首先要GROUP的 …

mysql sql database select

5
推荐指数
1
解决办法
5333
查看次数

使用XMLStarlet插入1000多个节点和属性-运行缓慢

这是效率问题,而不是故障排除。我有以下代码片段:

# The -R flag restores malformed XML
xmlstarlet -q fo -R <<<"$xml_content" | \
    # Delete xml_data
    xmlstarlet ed -d "$xml_data" | \
    # Delete index
    xmlstarlet ed -d "$xml_index" | \
    # Delete specific objects
    xmlstarlet ed -d "$xml_nodes/objects" | \
    # Append new node
    xmlstarlet ed -s "$xml_nodes" -t elem -n subnode -v "Hello World" | \
        # Add x attribute to node
        xmlstarlet ed -i "($xml_nodes)[last()]" -t attr -n x -v "0" | \
        # Add …
Run Code Online (Sandbox Code Playgroud)

xml unix bash shell xmlstarlet

5
推荐指数
1
解决办法
457
查看次数

将两个或多个简单数组转换为多维数组?

鉴于我有这些数组:

$array1:

Array
(
    [0] => Title1
    [1] => Title2
    [2] => Title3
    [3] => Title4
...
Run Code Online (Sandbox Code Playgroud)

$array2:

Array
(
    [0] => A
    [1] => B
    [2] => C
    [3] => D
...
Run Code Online (Sandbox Code Playgroud)

$array3:

Array
(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
...
Run Code Online (Sandbox Code Playgroud)

我想将所有上层数组转换为一个多维数组,如下所示:

Array
(
    [0] => Array
        (
            [0] => Title1
            [1] => A
            [2] => 1
        )

    [1] => Array
        (
            [0] => Title2
            [1] => B
            [2] …
Run Code Online (Sandbox Code Playgroud)

php arrays foreach multidimensional-array

4
推荐指数
1
解决办法
102
查看次数

通过 XMLStarlet 取消 &amp; 符号 (&amp;) - Bugging &amp;

这是一个相当烦人但更简单的任务。根据本指南,我写了这个:

#!/bin/bash

content=$(wget "https://example.com/" -O -)
ampersand=$(echo '\&')

xmllint --html --xpath '//*[@id="table"]/tbody' - <<<"$content" 2>/dev/null |
    xmlstarlet sel -t \
        -m "/tbody/tr/td" \
            -o "https://example.com" \
            -v "a//@href" \
            -o "/?A=1" \
            -o "$ampersand" \
            -o "B=2" -n \
Run Code Online (Sandbox Code Playgroud)

我成功地提取从表中的每个环节和一切都被正确地连接在一起,然而,而不是再现符号我收到这在每一个环节的结尾:

https://example.com/hello-world/?A=1\&amp;B=2
Run Code Online (Sandbox Code Playgroud)

但实际上,我正在寻找类似的东西:

https://example.com/hello-world/?A=1&B=2
Run Code Online (Sandbox Code Playgroud)

这个想法是使用反斜杠转义字符,\&以便它被忽略。最初,在这种情况下,我尝试将其直接放入-o "\&" \而不是-o "$ampersand" \删除ampersand=$(echo '\&')。结果还是一样。

本质上,通过删除反斜杠它仍然输出:

https://example.com/hello-world/?A=1&amp;B=2
Run Code Online (Sandbox Code Playgroud)

只是\后面的&amp;被删除了。

为什么?

我敢肯定这是缺少的基本知识。

bash shell escaping wget xmlstarlet

4
推荐指数
1
解决办法
923
查看次数

SQL - 使用 CTE 或聚合计算指数移动平均值?

EMA的一般公式:

EMA(x n ) = α * x n + (1 - α) * EMA(x n-1 )

在哪里:

x n = 价格
α = 0.5 -- 给定 3 天 SMA

下面的递归 CTE 可以完成这项工作:

WITH recursive
ewma_3 (DATE, PRICE, EMA_3, rn)
AS (

    -- Anchor
    -- Feed SMA_3 to recursive CTE
    SELECT rows."DATE", rows."PRICE", sma.sma AS ewma, rows.rn
    FROM (
        SELECT "DATE", "PRICE", ROW_NUMBER() OVER(ORDER BY "DATE") rn
        FROM PRICE_TBL
    ) rows
    JOIN (
        SELECT "DATE",
           ROUND(AVG("PRICE"::numeric)
              OVER(ORDER BY "DATE" ROWS …
Run Code Online (Sandbox Code Playgroud)

sql postgresql recursion weighted-average

4
推荐指数
1
解决办法
1907
查看次数