问题列表 - 第15543页

测试字符串是否在PHP中进行URL编码

如何测试字符串是否为URL编码?

以下哪种方法更好?

  • 在字符串中搜索要编码的字符,这些字符不是,如果存在,则表示未编码,或者
  • 使用我做过的这样的东西:

function is_urlEncoded($string){
 $test_string = $string;
 while(urldecode($test_string) != $test_string){
  $test_string = urldecode($test_string);
 }
 return (urlencode($test_string) == $string)?True:False; 
}

$t = "Hello World > how are you?";
if(is_urlEncoded($sreq)){
 print "Was Encoded.\n";
}else{
 print "Not Encoded.\n";
 print "Should be ".urlencode($sreq)."\n";
}
Run Code Online (Sandbox Code Playgroud)

上面的代码可以工作,但不是在字符串经过双重编码的情况下,如下例所示:

  • $t = "Hello%2BWorld%2B%253E%2Bhow%2Bare%2Byou%253F";
  • $t = "Hello+World%2B%253E%2Bhow%2Bare%2Byou%253F";

php testing url-encoding

21
推荐指数
6
解决办法
11万
查看次数

'作为属性参数的数组不符合CLS'警告,但没有给出类型信息

在编译我的解决方案时,我收到以下几个警告:

warning CS3016: Arrays as attribute arguments is not CLS-compliant
Run Code Online (Sandbox Code Playgroud)

没有给出关于哪种类型不合规的其他信息.在我的项目中,我有一些属性在其构造函数中使用params数组参数,但它们都是内部的,并且不应该影响CLS兼容性.为什么要给出这个警告,它是什么类型的?

.net csc cls-compliant

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

C中的生成器

我得到了一些我无法理解的代码.

在将pow2s的g替换为地图的gen结构后,我陷入了困境.从那里开始,我无法看到它如何继续跟踪价值以及如何存储价值.

代码编译并运行.

有人可以帮我理解这段代码吗?谢谢!

PS:我正在学习C语言

它是从以下Python代码翻译而来的:

>>> def pow2s():
      yield 1
      for i in map((lambda x:2*x),pow2s()):
        yield i
>>> def mymap(f,iter):
      for i in iter:
        yield f(i)
Run Code Online (Sandbox Code Playgroud)

和翻译的C代码:

#include <stdio.h>
#include <stdlib.h>

struct gen { // generic structure, the base of all generators
  int (*next)() ;
  int continue_from ;
} ;

typedef int (*fptr)() ; 

// Each iterator has 3 components: a structure, a constructor for the structure,
// and a next function

// map

struct mapgen { // structure …
Run Code Online (Sandbox Code Playgroud)

c

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

将Dictionary KeyCollection转换为String数组

我有一个Dictionary<int, string>我想将Key集合转换为CSV字符串.

我打算这样做:

String.Join(",", myDic.Keys.ToArray().Cast<string[]>());
Run Code Online (Sandbox Code Playgroud)

演员虽然失败了.

谢谢

.net c# linq dictionary c#-3.0

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

在Eclipse中调试一些PhpUnit测试

我使用Eclipse PDT for PHP.我可以运行我的PhpUnit测试:工作正常.

但我无法调试我的单元测试.有人已经这样做了吗?有人可以帮忙吗?

Messxoud,Thanx

eclipse debugging phpunit

12
推荐指数
2
解决办法
8959
查看次数

NServiceBus监听器缺少消息

我刚刚开始使用nservice总线,并试图让出版工作.我有一个听众,似乎缺少一些消息.它配置有

 <MsmqTransportConfig
  InputQueue="InformMessages"
  ErrorQueue="error"
  NumberOfWorkerThreads="5"
  MaxRetries="5"
 />
Run Code Online (Sandbox Code Playgroud)

有趣的是,如果我将NumberOfWorkerThreads设置为1,它会一直错过其他所有消息.对于较大的值,似乎不那么确定.在我的消息处理程序中我有

class MessageHandler : IMessageHandler<ICourseRegister>
{
    public void Handle(ICourseRegister message)
    {
        Console.WriteLine("Message dun got gotted");
        Console.WriteLine("Course name is: " + message.CourseName);
    }

    private IBus bus;
    public IBus Bus
    {
        set { this.bus = value; }
    }
}
Run Code Online (Sandbox Code Playgroud)

并且总线配置有

        var bus = NServiceBus.Configure.With()
              .SpringBuilder()
              .XmlSerializer()
              .MsmqTransport()
                  .IsTransactional(true)
                  .PurgeOnStartup(false)
              .UnicastBus()
                  .ImpersonateSender(false)
                  .LoadMessageHandlers()
              .CreateBus()
              .Start();
Run Code Online (Sandbox Code Playgroud)

是否有我需要做的事情和Handler的结束,以便它可以自由准备接收下一条消息或我需要做的一些配置,以便在处理程序繁忙时有一个客户端队列来保留消息.发送消息之间的时间似乎并不重要,它可能是20秒,并且监听器仍然无法获取所有消息.

nservicebus

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

当文本框内容失去焦点时,是否可以将其标准化?

当用户将焦点更改为同一数据输入表单上的另一个控件时,我收到了要求标准化文本框内容的要求.示例规范化:

  • 修剪输入开头和结尾的空格
  • 如果文本框为空且无效,请使用默认值替换文本框的内容

我觉得这不符合良好的GUI设计.我已阅读文本框Windows UX准则,但我没有立即找到任何相关规则.

以这种方式规范化文本框内容是否可以接受?

user-interface textbox user-experience

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

迭代时修改列表

l  = range(100)                         
for i in l:                         
    print i,                         
    print l.pop(0),                  
    print l.pop(0)
Run Code Online (Sandbox Code Playgroud)

上面的python代码给出了与预期完全不同的输出.我想循环遍历项目,以便我可以在循环时跳过项目.

请解释.

python iterator loops list

54
推荐指数
5
解决办法
8万
查看次数

TDD,Mocking,依赖注入和DRY原则

我有一个控制器类,它在ctor中运行多个参数,这些参数在运行时被注入.

例:

    public ProductController(IProductRepositort productRepository, 
IShippingService shippingService, IEmailProvider emailProvider)
    {
    ...
    }
Run Code Online (Sandbox Code Playgroud)

我发现测试方法变得越来越大.我正在设置如下方法:

[Test]
public void CanSendProduct()
{
    //Code to set up stub
                List<Product> products = new List<Product>();
                for (int i = 0; i < length; i++)
                {
                    products.Add(new Product()));
                }

                var mockProductRepository = new Mock<IProductRepository>();
                mockProductRepository.Setup(x => x.GetProducts()).Returns(products);

                //Code to set up stub
                ....
                ....   
                var mockShippingService = new Mock<IShippingService>();
                mockShippingService.Setup(x => x.GetShippers()).Returns(shippers);

                //Code to set up stub
                .....
                .....
                 var mockEmailProvider = new Mock<IEmailProvider>();
                mockEmailProvider.Setup(x => x.Send()).Returns(provider);

                //Execute …
Run Code Online (Sandbox Code Playgroud)

tdd mocking

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

如何在iBATIS中使用IN子句?

我正在使用iBATIS来创建select语句.现在我想用iBATIS实现以下SQL语句:

SELECT * FROM table WHERE col1 IN ('value1', 'value2');
Run Code Online (Sandbox Code Playgroud)

使用以下方法,语句未正确准备且没有返回结果:

SELECT * FROM table WHERE col1 IN #listOfValues#;
Run Code Online (Sandbox Code Playgroud)

iBATIS似乎重组了这个列表并尝试将其解释为字符串.

如何正确使用IN子句?

java sql ibatis

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