小编And*_*Gee的帖子

递归重命名对象键

我有一个递归函数来重命名对象的键名,但我无法弄清楚如何重命名2个键(问题键是对象)

我认为问题在于我正在检查对象类型但是如何在该点重命名密钥?

实际的阵列非常大,但下面是一个减少的版本.

任何帮助赞赏.

var keys_short = ['ch','d','u','tz'];
var keys_long = ['children','data','user_id','time_zone'];
function refit_keys(o){
    build = {};
    for (var i in o){
        if(typeof(o[i])=="object"){
            o[i] = refit_keys(o[i]);
            build = o;
        }else{
            var ix = keys_short.indexOf(i);
            if(ix!=-1){
                build[keys_long[ix]] = o[keys_short[ix]];
            }
        }
    }
    return build;
}
Run Code Online (Sandbox Code Playgroud)

我的输入如下:

{
    "id":"1",
    "ch":[
        {
            "id":"3",
            "ch":[
            ],
            "d":{
                "u":"3",
                "tz":"8.00"
            }
        },
        {
            "id":"45",
            "ch":[
                {
                    "id":"70",
                    "ch":[
                        {
                            "id":"43",
                            "ch":[
                            ],
                            "d":{
                                "u":"43",
                                "tz":"-7.00"
                            }
                        }
                    ],
                    "d":{
                        "u":"70",
                        "tz":"-7.00"
                    }
                }
            ],
            "d":{ …
Run Code Online (Sandbox Code Playgroud)

javascript recursion jquery multidimensional-array

8
推荐指数
2
解决办法
3928
查看次数

如何删除空关联数组条目

我有一个关联数组: $csv_arr

Array
(
    [0] => Array
        (
            [Enfalac] => alpha linolenic acid 300 mg
            [Enfapro] => alpha linolenic acid 200 mg
        )

    [1] => Array
        (
            [Enfalac] => arachidonic acid 170 mg
            [Enfapro] => 
        )

    [2] => Array
        (
            [Enfalac] => 
            [Enfapro] => 
        )

    [3] => Array
        (
            [Enfalac] => calcium 410 mg
            [Enfapro] => calcium 550 mg
        )
)
Run Code Online (Sandbox Code Playgroud)

如何删除所有完全空的条目,例如$csv_arr[2]保留部分条目,例如$csv_arr[1]

我试过$csv_arr = array_filter(array_map('array_filter', $csv_arr));但是这会删除空元素:$csv_arr[1]['Enfapro']

谢谢

php associative-array multidimensional-array

5
推荐指数
2
解决办法
6750
查看次数

使用bootstrap-modal modalOverflow检测滚动事件?

我有一些工具提示,我的模态中使用了日期选择器.如何检测溢出模态是否已滚动,以便我可以重新定位任何打开的浮动元素并根据模态滚动位置重新定位它们?谢谢

window.scroll没有开火!

这里有一个例子:长模态(页面底部) http://jschr.github.io/bootstrap-modal/

html javascript css jquery twitter-bootstrap

5
推荐指数
2
解决办法
6876
查看次数

尝试仅将 RTSP 流中的元数据保存到文件中

我正在尝试访问并保存来自 IP 摄像机的元数据流。

到目前为止,我已成功保存元数据:

openRTSP -b 400000 -K -t rtsp://username:password@192.168.2.4:5554/live/ch1
Run Code Online (Sandbox Code Playgroud)

这会创建一个元数据文件application-VND.ONVIF.METADATA-2(示例如下),但这也会流式传输视频文件并将其保存到:video-H264-1当前目录中。我宁愿不流式传输视频数据,因为我没有用它,而且带宽是多个流的问题。

元数据样本

user@server:~# tail -n 1 application-VND.ONVIF.METADATA-2 
Run Code Online (Sandbox Code Playgroud)
<tt:MetadataStream xmlns:tt="http://www.onvif.org/ver10/schema" xmlns:wsnt="http://docs.oasis-open.org/wsn/b-2"><tt:VideoAnalytics><tt:Frame UtcTime="2022-04-02T06:55:13.577000"><tt:Transformation><tt:Translate x="-1.0" y="1.0"/><tt:Scale x="2.0" y="-2.0"/></tt:Transformation><tt:Object ObjectId="39242"><tt:Appearance><tt:Shape><tt:BoundingBox left="0.949999988079071" top="0.0" right="0.981249988079071" bottom="0.251800000667572"/><tt:CenterOfGravity x="0.965624988079071" y="0.125900000333786"/></tt:Shape><tt:Class><tt:ClassCandidate><tt:Type>Person</tt:Type><tt:Likelihood>0.47999998927116394</tt:Likelihood></tt:ClassCandidate></tt:Class></tt:Appearance></tt:Object></tt:Frame><tt:Frame UtcTime="2022-04-02T06:55:13.577000"><tt:Transformation><tt:Translate x="-1.0" y="1.0"/><tt:Scale x="2.0" y="-2.0"/></tt:Transformation><tt:Object ObjectId="39283"><tt:Appearance><tt:Shape><tt:BoundingBox left="0.21143999695777893" top="0.2988300025463104" right="0.33105000853538513" bottom="0.9925199747085571"/><tt:CenterOfGravity x="0.27124500274658203" y="0.6456749886274338"/></tt:Shape><tt:Class><tt:ClassCandidate><tt:Type>Person</tt:Type><tt:Likelihood>0.4699999988079071</tt:Likelihood></tt:ClassCandidate></tt:Class></tt:Appearance></tt:Object></tt:Frame><tt:Frame UtcTime="2022-04-02T06:55:13.577000"><tt:Transformation><tt:Translate x="-1.0" y="1.0"/><tt:Scale x="2.0" y="-2.0"/></tt:Transformation><tt:Object ObjectId="39287"><tt:Appearance><tt:Shape><tt:BoundingBox left="0.20412999391555786" top="0.28610000014305115" right="0.33774998784065247" bottom="0.6600499749183655"/><tt:CenterOfGravity x="0.27093999087810516" y="0.4730749875307083"/></tt:Shape><tt:Class><tt:ClassCandidate><tt:Type>Person</tt:Type><tt:Likelihood>0.23000000417232513</tt:Likelihood></tt:ClassCandidate></tt:Class></tt:Appearance></tt:Object></tt:Frame><tt:Frame UtcTime="2022-04-02T06:55:13.577000"><tt:Transformation><tt:Translate x="-1.0" y="1.0"/><tt:Scale x="2.0" y="-2.0"/></tt:Transformation><tt:Object ObjectId="39288"><tt:Appearance><tt:Shape><tt:BoundingBox left="0.6440899968147278" top="0.0" right="0.7041800022125244" bottom="0.19472000002861023"/><tt:CenterOfGravity x="0.6741349995136261" y="0.09736000001430511"/></tt:Shape><tt:Class><tt:ClassCandidate><tt:Type>Person</tt:Type><tt:Likelihood>0.18000000715255737</tt:Likelihood></tt:ClassCandidate></tt:Class></tt:Appearance></tt:Object></tt:Frame><tt:Frame UtcTime="2022-04-02T06:55:13.577000"><tt:Transformation><tt:Translate x="-1.0" y="1.0"/><tt:Scale x="2.0" y="-2.0"/></tt:Transformation><tt:Object ObjectId="39289"><tt:Appearance><tt:Shape><tt:BoundingBox left="0.29583001136779785" top="0.30309998989105225" …
Run Code Online (Sandbox Code Playgroud)

bash shell command-line-interface rtsp gstreamer

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

在数组值之间查找值

我有一个大型数组,想要找出搜索值出现在哪些数组值之间.

该数组的简化版本如下:

[0] => Array
    (
        [min] => 0
        [max] => 4.999
        [val] => low
    )

[1] => Array
    (
        [min] => 5
        [max] => 9.999
        [val] => med
    )

[2] => Array
    (
        [min] => 10
        [max] => 14.999
        [val] => high
    )
Run Code Online (Sandbox Code Playgroud)

所以,如果我要搜索6.2,返回的结果将是数组值'med'

是否有内置函数可以轻松遍历数组进行此计算,或者我是否需要设置foreach循环

提前致谢

php arrays lookup multidimensional-array

3
推荐指数
1
解决办法
6311
查看次数

setInterval根本不工作?

我有三个函数:get_stat(sess),它接受一个参数发送到php脚本handlestat(),它处理php脚本check_sms(sess_a)的响应,它应该使用setInterval重复自身 - 它依赖于一个变量disabled_stat来清除计时器

但它不起作用,get_stat(sess)没有被解雇,它只是停滞不前

var disabled_stat = false;
function get_stat(sess)
{
    if(disabled_stat==false)
    {
        var url = "/sms_check_status.php?param=";
        var title_f = document.getElementById('stat_title');
        var stat_f = document.getElementById('stat_text');
        title_f.innerHTML = '&nbsp;';
        stat_f.innerHTML = '&nbsp;';

        var myRandom=parseInt(Math.random()*99999999);
        http.open("GET", url + escape(sess) + "&rand=" + myRandom, true);
        http.onreadystatechange = handlestat;
        http.send(null);
    }
}

function handlestat()
{
    var str_out = '';
    var results = '';
    if (http.readyState == 4)
    {
        results = http.responseText.split("~");
        if(results[0]=='1')
        {
            document.getElementById('stat_title').innerHTML = results[1];
            document.getElementById('stat_text').innerHTML = results[2];
            if(results[3]=='1')
            {
                disabled_stat = true; …
Run Code Online (Sandbox Code Playgroud)

javascript setinterval

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

MySQL GROUP BY 忽略 ORDER BY 子句

我有两个查询,唯一的区别是 GROUP BY 子句

SELECT * FROM `packages_sorted_YHZ` WHERE `hotel_city` = 'Montego Bay'
ORDER BY  `deal_score` DESC 
LIMIT 0,3;

SELECT * FROM `packages_sorted_YHZ` WHERE `hotel_city` = 'Montego Bay'
GROUP BY `hotel_name`
ORDER BY  `deal_score` DESC
LIMIT 0,3;
Run Code Online (Sandbox Code Playgroud)

第一个查询返回第一个结果deal_score为 75,但第二个查询返回第一个结果deal_score为 72。

我会认为无论 GROUP BY 子句如何,第一个结果都会有最高的交易分数(75)

GROUP BY 子句的目的是hotel_name为每个结果选择一个唯一的。有谁知道我在这里做错了什么。

php mysql group-by

0
推荐指数
1
解决办法
2272
查看次数