小编eli*_*ide的帖子

在一个替换呼叫中替换多个字符

非常简单的小问题,但我不太明白该怎么做.

我需要用空格替换'_'的每个实例,并且'#'的每个实例都没有/空.

var string = '#Please send_an_information_pack_to_the_following_address:';

我试过这个:

string.replace('#','').replace('_', ' ');

我不是真的链接这样的命令,但还有另一种方法可以做到这一点吗?

javascript jquery

224
推荐指数
9
解决办法
38万
查看次数

如何单元测试使用类型提示的函数

假设我有一个类包含一个使用类型提示的函数,如下所示:

class Testable 
{
    function foo (Dependency $dependency) 
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

我想Testable使用以下代码对此类进行单元测试:

$dependencyMock = $this->getMockBuilder('Dependency')
        ->disableOriginalConstructor()
        ->getMock();


$testable = new Testable($dependencyMock);
Run Code Online (Sandbox Code Playgroud)

如果我使用PHPUnit创建$ dependency的存根,然后尝试foo使用这个模拟调用函数(如上所述),我将得到一个致命的错误,说:

传递给函数foo()的参数1必须是Dependency的一个实例,给出Mock_Foo的实例

如何使用PHPUnit和仍然存根来对此函数进行单元测试$dependency

phpunit unit-testing mocking type-hinting symfony

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

如何在PHP中使用var_dump()查看长字符串的完整内容

我有一个像一些字符串的数组

$array = array("string1","string2","string3");
Run Code Online (Sandbox Code Playgroud)

但这些字符串很长,有时长度为2000+.所以,当我这样做

echo "<pre>";
var_dump($array);
echo "</pre>";
Run Code Online (Sandbox Code Playgroud)

它向我展示了类似的东西

string 'zzzzzzzzzzzzzzzzz '... (length = 994)
string 'yyyyyyyyyyyyyyyyy '... (length = 1287)
string 'xxxxxxxxxxxxxxxxx '... (length = 1718)
Run Code Online (Sandbox Code Playgroud)

而不是完整的字符串.如何查看数组的全部内容?对于那些会问的人,它包含HTML标签,所以这就是我不写的原因echo $array[string];

php arrays var-dump

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

4.5"中的CallerMemberName属性是否能够伪造"?

所以.NET 4.5引入了CallerMemberNameAttribute,对于任何使用WPF并实现的人来说,这似乎是天赐之物INotifyPropertyChanged- 我的问题是:4.5 5.0编译器本质上是否绑定/支持该属性,还是更多的环境语法糖助手,就像人们可以通过声明ExtensionAttribute自己的神奇,打开LINQ语法来伪造Visual Studio一样?

编辑:(对不起Jon!)我想我是否可以CallerMemberNameAttribute通过在适当的命名空间中重新声明属性来"启用" .NET 4.0中的功能,就像在.NET中"启用"LINQ查询语法一样2.0通过适当的ExtensionAttribute类声明.我强烈的怀疑是不,自然......

换句话说:我想知道如果CallerMemberName不升级到.NET 4.5/5,我是否可以从中受益

希望这更清楚......

NinjaEdit#2:叹息......版本编号惯例令人困惑!

.net wpf .net-4.5

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

将数据库/后端添加到Android应用程序

所以我一直在编写小型Android应用程序,并希望开始编写更大的应用程序,这些应用程序能够允许用户创建帐户,允许我将他们的帐户数据存储在某种类型的数据库中,并且实际上只是添加某种功能需要某种后端.

我是编程新手,刚开始使用Java/Android.我应该从哪里开始了解这些东西?这是我需要的数据库吗?什么类型的流行或好学习/使用?

我读到了https://www.parse.com,它看起来很有趣且易于使用,但我不想学习一些不是标准或我只能与他们的客户一起使用的东西.

database android

20
推荐指数
2
解决办法
3万
查看次数

IntelliJ Artifact具有无效扩展名

我在jboss上部署工件时遇到了一个奇怪的问题.在IntelliJ中生成默认的spring-mvc项目之后,我尝试运行它,但IntelliJ在"运行/调试配置"中显示一条消息,表明我的"Artifact XYZ:war爆炸的扩展名无效".

我在stackoverflow"更改扩展"上找到了建议,但我有正确的.war扩展名.

怎么了?

java spring-mvc intellij-idea jboss7.x

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

与PHP 5.6相比,我在Php 7中面临更多的内存消耗

当我做基准测试时,我发现PHP 7使用的内存比PHP 5.6更多.

所以,我做了一个测试.我运行的脚本只包含:

  $a=10;
Run Code Online (Sandbox Code Playgroud)

以下是我在没有任何模块的情况下使用PHP CLI时使用的内存的结果(php -n)

php 5.6 = 222600 Bytes
php 7.0 = 350448 Bytes

* PHP 5.6.23 (cli) (built: Jun 22 2016 12:13:15)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies 

* PHP 7.0.9 (cli) (built: Jul 20 2016 10:47:41) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
Run Code Online (Sandbox Code Playgroud)

环境是

  • 操作系统:窗口10
  • 服务器:IIS(尽管我使用的是CLI,而不是服务器),具有快速cgi
  • 机器:64位
  • PHP-23年6月5日 - NTS-Win32的VC11-64
  • PHP-7.0.9-NTS-Win32的VCl 4-64

谁能解释为什么我得到这个结果?


额外的测试 …

php php-internals

19
推荐指数
3
解决办法
2万
查看次数

PDO准备语句 - 用于参数名称的冒号是什么?

:在使用PDO时看到过许多在命名参数前使用冒号()的文章,以及一些不使用冒号的文章.我很快就不会使用冒号,只是因为它只是一次按键,而且更容易阅读.

它似乎对我来说很好,但我很好奇是否有一些重要的东西,我在冒号的使用时缺少?

例如,这很好用:

function insertRecord ($conn, $column1, $comumn2) {
    try {
        $insertRecord = $conn->prepare('INSERT INTO Table1 (column1, column2)
        VALUES(:column1, :column2)');
        $insertRecord->execute(array(
                'column1' => $column1,
                'column2' => $column2
            ));
    }
    catch(PDOException $e) {
        echo $e->getMessage();
    }
}
Run Code Online (Sandbox Code Playgroud)

与使用此功能的大多数开发人员相反,这也有效:

function insertRecord ($conn, $column1, $comumn2) {
    try {
        $insertRecord = $conn->prepare('INSERT INTO Table1 (column1, column2)
        VALUES(:column1, :column2)');
        $insertRecord->execute(array(
                ':column1' => $column1,
                ':column2' => $column2
            ));
    }
    catch(PDOException $e) {
        echo $e->getMessage();
    }
}
Run Code Online (Sandbox Code Playgroud)

注意execute语句参数中的冒号.

我想了解冒号的用途.

php pdo prepared-statement

17
推荐指数
2
解决办法
3936
查看次数

方法表达式不是函数类型

我有以下JavaScript文件:

/*global $ */

function foo() {
    'use strict';
    var $tr = $('table tr'),
        $td = $tr.children('td');

    $td.html('Hello World');
}
Run Code Online (Sandbox Code Playgroud)

在PHPStorm中,children通过弱警告加下划线.将鼠标移到它上面会显示以下消息:

方法表达式不是函数类型

此文件与jquery.min.js位于同一目录中(v.1.11.0,如果这很重要).

我怎样才能解决这个问题?

请注意,上面的示例是一个足以重现问题的极简主义示例; 它不是我的实际代码,但它会产生相同的结果.

javascript jquery jslint phpstorm

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

服务器可以阻止卷曲请求吗?

我正在使用ZOHO API并尝试使用cURL更新记录.我尝试了不同的cURL变体,但它总是返回"false".但是当我使用浏览器调用相同的URL时,它可以工作.

他们有什么方法可以阻止cURL请求吗?有没有其他方法可以使用POST或GET请求调用该URL?

我尝试过的cURL代码如下:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
Run Code Online (Sandbox Code Playgroud)

php curl zoho

15
推荐指数
3
解决办法
4万
查看次数