小编fst*_*tab的帖子

如何避免php函数中位置参数的缺点?

我有一些PHP函数,它们具有大量具有默认值的参数.像这样的东西:

function foo($a=0,$b=6,$c=2,...
Run Code Online (Sandbox Code Playgroud)

我想知道我能做些什么来避免位置论证的恐怖.是否可以仅使用参数集的子集以及名称来调用函数?如:

foo($c=37)
Run Code Online (Sandbox Code Playgroud)

谢谢!

php arguments function optional-arguments

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

输入参数太多,即使使用varargin也是如此

不幸的是,我得到了"太多的输入参数".执行此调用时出错:

[varargout{1:nargout}]=pca(varargin{1},'Algorithm','svd','Economy',fEconomy);
Run Code Online (Sandbox Code Playgroud)

关于具有签名的功能如下:

function [coeff, score, latent, tsquared, explained, mu] = pca(x,varargin)
Run Code Online (Sandbox Code Playgroud)

我用这种方式调用princomp:

[pc,score,latent,tsquare] = princomp(data);
Run Code Online (Sandbox Code Playgroud)

知道可能是什么原因的任何想法?(该错误出现在stats包的princomp.m中)

matlab variadic-functions pca

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

通过Google的API检索Google Analytics(分析)的行为流?

我已成功使用node.js通过出色的google-api-nodejs-client从Google Analytics(分析)下载了一些数据。

不幸的是,我还没有找到下载Behavior/Behavior Flow页面中显示的数据的方法。

任何人都有关于如何从API检索流数据的想法?

javascript google-analytics google-analytics-api node.js

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

替换数组中缺失/未定义值的最佳方法?

我需要处理一些包含undefined值的数组,如下所示:

[ 1, 1, 1, 1, 1, , 1, 1 ]
[ 1, , 1, , , 1, 1 ]
[ 1, , , , , 1, 1 ]
Run Code Online (Sandbox Code Playgroud)

我需要实现的不是删除undefined值,但我需要用零替换它们.

我尝试使用underscore.js来实现这一目标; 没有成功.

以下是我的解决方案尝试:

binarymap = _.map(binarymap, function(curr){
    // let's replace all undefined with 0s
    if(_.isUndefined(curr)) {
        return 0;
    }
    return curr;
});
Run Code Online (Sandbox Code Playgroud)

不幸的是,它不起作用.underscore.js的功能_.map完全忽略了undefined价值观.

有任何想法吗?优雅的解决方

javascript arrays list map underscore.js

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

我可以从http.ResponseWriter获取io.Writer吗?

我想json.Encoder用来写一个http.ResponseWriter.

我不知道,我在哪里得到http.ResponseWriter自己io.Writer

(io.Writer作为参数需要json.NewEncoder)

有任何想法吗?

io json go httpserver

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

退出php命令而不触发关机功能

如何退出php脚本(例如使用exit()函数)但不触发所有先前注册的关闭函数(使用register_shutdown_function)?

谢谢!

编辑:或者,有没有办法清除所有注册的关机功能?

php callback exit atexit abort

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

为什么我不能将新分配的字节数组分配给[] byte作为类型的变量?

我试图声明一个具有未指定大小的类型数组的变量,[]byte然后用分配的大小数组填充它,256如下所示:

var buf []byte
buf = new([256]byte)
Run Code Online (Sandbox Code Playgroud)

不幸的是,它不起作用.返回的编译错误如下:

cannot use *new([256]byte) (type [256]byte) as type []byte in assignment
Run Code Online (Sandbox Code Playgroud)

任何的想法?

arrays types memory-management allocation go

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

无法从`[] interface {}`断言类型`[] string`

我正在尝试处理从mongodb(mgo)检索到的一些数据.

不幸的是,我无法为字符串列表断言正确的类型.我正在处理的功能如下:

func generate_version_histogram(userStats []interface{}) map[string]int {
    var histogram map[string]int
    for _, _u := range userStats {
        u := _u.(bson.M)
        for _, version := range (u["v"]).([]string) {
            if _, alreadyhere := histogram[version]; alreadyhere {
                histogram[version] += 1
            } else {
                histogram[version] = 1
            }
        }
    }
    return histogram
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,我遇到了以下运行时恐慌:

interface conversion: interface is []interface {}, not []string
Run Code Online (Sandbox Code Playgroud)

对于为什么会发生这种情况的任何想法?我该如何检索这些字符串?

casting type-conversion go mongodb mgo

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

有没有更简单的方法来实现net/http的JSON REST服务?

我正在尝试开发REST服务net/http.

该服务接收包含所有输入参数的JSON结构.我想知道是否有更简单,更短的方式来实现以下内容:

func call(w http.ResponseWriter, r *http.Request) {
    if err := r.ParseForm(); err != nil {
        fmt.Printf("Error parsing request %s\n", err)
    }
    var buf []byte
    buf = make([]byte, 256)
    var n, err = r.Body.Read(buf)
    var decoded map[string]interface{}
    err = json.Unmarshal(buf[:n], &decoded)
    if err != nil {
        fmt.Printf("Error decoding json: %s\n", err)
    }
    var uid = decoded["uid"]
    ...
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,只需要提取第一个参数就需要很多行.有任何想法吗?

rest json http go httpserver

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

如何在Haskell中表示数值表(例如列联表)?

在C中,最简单的方法是使用二维数组.那么Haskell呢?列表列表似乎不是一个优雅的解决方案.你会建议什么?

haskell multidimensional-array contingency data-structures

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

更简单的方法来创建矩阵/索引列表?

我想知道什么是最简单的方法来创建一个二维数组,每个行的索引到另一个多维数组.

例如,假设我有一个4x4的立方体,"indices matrix"将是以下内容:

np.concatenate([
    np.expand_dims(curr.ravel(),axis=0).T
    for curr
    in np.meshgrid(
        np.arange(4),
        np.arange(4),
        np.arange(4)
    )
],axis=1)
Run Code Online (Sandbox Code Playgroud)

结果如下:

array([[0, 0, 0],
      [0, 0, 1],
      [0, 0, 2],
      [0, 0, 3],
      [1, 0, 0],
      [1, 0, 1],
      ...
      [2, 3, 2],
      [2, 3, 3],
      [3, 3, 0],
      [3, 3, 1],
      [3, 3, 2],
      [3, 3, 3]])
Run Code Online (Sandbox Code Playgroud)

除了看起来第二列应该代替第一列这一事实,是否有更"紧凑"的方式以更紧凑的方式创建相同或相似的矩阵?

如果存在一个只接受任意多维数组并返回它的索引表的函数,那将是很好的.

python arrays numpy matrix indices

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

使用 std::multimap 是否可以保证 begin() 方法返回最新元素?

我是 C++ 的新手。我想知道:std::multimap(C++11)集合的迭代器中是否有一些插入时间保留?

我认为,因为它是由任意值索引的,所以不能保证迭代器中元素的排序保留插入时间,但我正在处理一些做出不同假设的代码,即返回的元素begin()是相关的到广告订单。

c++ iterator multimap c++-standard-library c++11

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