小编Hen*_*que的帖子

递归地遍历数组并打印步行路径

有人可以帮我提供一些关于如何递归地遍历数组的代码或指令,并在到达最后一个元素时打印到它的完整路径吗?一个简单的回声将起作用,因为我将使代码适应我正在开发的其他功能.

该函数不需要计算数组维度,因为这个参数将被传递:

例:

$depth = 8;

$array[1][3][5][6][9][5][8][9];
Run Code Online (Sandbox Code Playgroud)

当函数到达第8个元素时,它会打印到它的所有路径:

//print path
'1 -> 3 -> 5 -> 6 -> 9 -> 5 -> 8 -> 9'
Run Code Online (Sandbox Code Playgroud)
  • 正如我所说,只有这种格式的打印才有效,因为我会将代码实现到其他功能中.

  • 数组键可以具有相同的值.对于整个图书来说,显然在同一序列中没有相同的值.

更新:

步行递归功能:

$someArray[1][2][3] = 'end';
$someArray[1][2][6] = 'end';
$someArray[1][3][6] = 'end';
$someArray[4][3][7] = 'end';

function listArrayRecursive(&$array_name, $ident = 0){
    if (is_array($array_name)){
        foreach ($array_name as $k => &$v){
            if (is_array($v)){
                for ($i=0; $i < $ident * 10; $i++){ echo "&nbsp;"; }
                echo $k . " : " . "<br>";
                listArrayRecursive($v, $ident + 1);
            }else{ …
Run Code Online (Sandbox Code Playgroud)

php arrays recursion multidimensional-array

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

MySQL查询按日期范围对结果进行分组?

我有一个系统,当他连接应用程序时,每隔2到5秒就会ping一次数据库.根据他的连接,ping时间范围可能更大,如10秒左右.

例:

Pings: 1,4,6,8,9,12,16,20,50,180,187,189,200,203,206,210 ...
Run Code Online (Sandbox Code Playgroud)

我想运行一个查询来获取ping之间不超过1分钟的范围,对它们进行分组,这样我就可以判断用户连接了多长时间,并保存到新表中,如:

Connections table:
user: X | start_date: 1   | end_date: 50  | duration: 49
user: X | start_date: 180 | end_date: 210 | duration: 30
Run Code Online (Sandbox Code Playgroud)

由于ping,50,180,...超过1分钟,在那里被查询组所忽视.

ping存储为时间戳,因此可以轻松转换为日期,从最后一次ping到第一次ping的范围将为我提供会话持续时间.

反正在MySQL查询中有没有呢?有帮助吗?

编辑:添加ping历史模式

id  int(11)
user_id int(11)
ping_timestamp  int(11)
Run Code Online (Sandbox Code Playgroud)

谢谢,

mysql sql subquery

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

PHP函数是否需要返回任何值?

是否有必要返回任何值或是否提高速度?有时它需要编写不必返回值的函数,有些只是做一组函数或回显一些东西.返回值是否会改善'某事'?,返回true或返回false?

php return function

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

基于相同的id加入两个表字段?

需要帮助基于相同的ID连接两个表.

表格1:

id_1 | id_2
Run Code Online (Sandbox Code Playgroud)

表2:

id | name
Run Code Online (Sandbox Code Playgroud)

我需要一个查询,其中查找表2字段id上的id_1并返回字段名称,并在表2字段id上查找id_2并返回字段名称.

一个例子是:

表格1:

1 | 2
Run Code Online (Sandbox Code Playgroud)

表2:

1 | Joe
2 | Michael
Run Code Online (Sandbox Code Playgroud)

回归将是:

Joe | Michael
Run Code Online (Sandbox Code Playgroud)

谢谢,

mysql sql inner-join

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

php private vars questions ...(acessible trought var_dump)?

反正有没有阻止var_dump在类中打印私有变量?我得到了DBPASS的私有变量,使用时肯定不会打印

var_dump($this->db);
Run Code Online (Sandbox Code Playgroud)

["db_host:private"]=> string(9) "localhost" ...user, pass, etc ...
Run Code Online (Sandbox Code Playgroud)

php class

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