问题列表 - 第2957页

我想在PHP中最佳地检查定义的常量

在PHP中,根据您的错误报告级别,如果您没有定义常量,然后像这样调用它:

<?= MESSAGE ?>
Run Code Online (Sandbox Code Playgroud)

它可能会打印常量的名称而不是值!

所以,我编写了以下函数来解决这个问题,但我想知道你是否知道在更快的代码中做到这一点的方法?我的意思是,当我在没有此功能的情况下进行速度测试时,我可以在.0073秒内定义并转储500个常量.但是使用下面的这个功能,这会切换到从.0159到.0238秒的任何地方.因此,将微秒降低到尽可能小是很好的.为什么?因为我想用这个来模板化.我认为只需要比我想要显示的每个变量切换错误报告更好的方法.

function C($constant) {
    $nPrev1 = error_reporting(E_ALL);
    $sPrev2 = ini_set('display_errors', '0');
    $sTest = defined($constant) ? 'defined' : 'not defined';
    $oTest = (object) error_get_last();
    error_reporting($nPrev1);
    ini_set('display_errors', $sPrev2);
    if (strpos($oTest->message, 'undefined constant')>0) {
        return '';
    } else {
        return $constant;
    }
}

<?= C(MESSAGE) ?>
Run Code Online (Sandbox Code Playgroud)

php constants

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

为什么MD5哈希值不可逆?

我一直想知道的一个概念是使用加密哈希函数和值.我知道这些函数可以生成一个唯一且几乎不可能反转的哈希值,但这是我一直想知道的:

如果在我的服务器上,在PHP中我生成:

md5("stackoverflow.com") = "d0cc85b26f2ceb8714b978e07def4f6e"
Run Code Online (Sandbox Code Playgroud)

通过MD5函数运行相同的字符串时,您在PHP安装上获得相同的结果.正在使用一个过程从一些起始值产生一些值.

这是不是意味着有一些方法来解构正在发生的事情并扭转哈希值?

这些函数是什么使得结果字符串无法回溯?

hash md5 cryptography cryptographic-hash-function

88
推荐指数
6
解决办法
3万
查看次数

用于确定字符串是否仅包含字母数字字符的Php函数?

是否有Php函数来确定字符串是否仅包含ASCII字母数字字符?

注意:如果这个问题对某些人来说听起来很愚蠢,我很抱歉,但我在Php手册中找不到这样的功能.

php string

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

大规模重构战略

我目前正在处理一段代码,其中逻辑和数据访问都存在于GUI类中.显然,我想改善这种情况.

目前的结构基本上是:

  • 泥的大球

最终目标是实现类似DDD的结构:

  • DAL
  • 领域模型
  • 服务层
  • 演示模型
  • GUI

那么,你会如何解决这个问题呢?

legacy refactoring

22
推荐指数
2
解决办法
3413
查看次数

SQL部门在mysql中使用'not exists'

我有下表:


'committee' table

commname    profname
========================
commA       bill
commA       jack
commA       piper
commB       bill
commB       piper

而且我正在努力寻找那些'吹笛者'所在的每个委员会的教授(答案应该是吹笛手和账单):

我有以下SQL分区查询,但它是错的,我无法弄清楚问题出在哪里(不返回账单,只是piper):


select b.profname
from committee b
where not exists 

(select commname
from committee a
where profname = 'piper' and not exists 

(select commname
from committee
where a.profname=b.profname ))

有人可以帮我这个吗?谢谢,

mysql sql

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

如何使用css应用换行/继续样式和代码格式

当在网络上呈现预先格式化的文本(例如代码示例)时,换行可能是个问题.您希望在不滚动的情况下进行可读性包装,但也需要对用户明确说明它是一行而没有换行符.

例如,您可能需要显示一个非常长的命令行,如下所示:

c:\Program Files\My Application\Module\bin\..> Some_really_long_command line "with parameters" "that just go on and on" " that should all be typed on one line" "but need to be wrapped for display and I'd like the text style to indicate that it has wrapped"
Run Code Online (Sandbox Code Playgroud)

(Stackoverflow强制这样的一行不要换行.)

有没有一种使用CSS设计样式的方法来提供与书中看到的相同的处理方式?即包裹该行,但包括指示行继续的图像或字形.

显然我正在寻找一种可以应用于所有文本的样式,并让浏览器的XHTML/CSS渲染引擎找出哪些行已经包装,因此需要特殊处理.

解决方案到目前为止..

添加行继续标志符号

感谢Jack Ryan和Maarten Sander,有一个合理可行的解决方案,可以在包裹线的左侧或右侧添加连续字形.它需要在垂直方向上具有重复字形的图像,该图像是偏移的,因此如果只有一条未包装的线条则不可见.该技术的主要要求是每条线都需要在一个块内(例如p,span或div).这意味着它不能轻易地手动使用刚刚坐在前块中的现有文本.

下面的片段总结了基本技术.我在这里发布了一个实例.

.wrap-cont-l {
  margin-left: 24px;
  margin-bottom: 14px;
  width: 400px;
}

.wrap-cont-l p {
  font-family: Courier New, Monospace;
  font-size: 12px;
  line-height: 14px;
  background: url(wrap-cont-l.png) no-repeat 0 14px; /* …
Run Code Online (Sandbox Code Playgroud)

html css

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

DB2是否有"插入或更新"语句?

从我的代码(Java)我想确保在执行代码后数据库(DB2)中存在一行.

我的代码现在执行了一个select,如果没有返回结果,它会执行insert.我真的不喜欢这个代码,因为它在多线程环境中运行时会让我遇到并发问题.

我想要做的是将这个逻辑放在DB2而不是我的Java代码中.DB2有insert-or-update声明吗?或者我可以使用的任何类似的东西?

例如:

insertupdate into mytable values ('myid')
Run Code Online (Sandbox Code Playgroud)

另一种方法可能是始终执行insert并捕获"SQL-code -803主键已存在",但我想尽可能避免这种情况.

sql database db2 upsert insert-update

37
推荐指数
3
解决办法
5万
查看次数

我有一个整数数组,如何在mysql查询中使用每一个(在php中)?

我有一个充满随机内容项ID的数组.我需要运行一个mysql查询(数组中的id进入WHERE子句),使用数组中的每个ID,按照它们出现在所述数组中的顺序.我该怎么做?

对于数组中的每个ID,这将是一个UPDATE查询.

php mysql arrays

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

如何将NULL限制为存储过程SQL Server的参数?

是否可以创建存储过程

CREATE PROCEDURE Dummy 
    @ID INT NOT NULL
AS
BEGIN
END
Run Code Online (Sandbox Code Playgroud)

为什么不可能做这样的事情?

sql sql-server stored-procedures

36
推荐指数
3
解决办法
5万
查看次数

为什么我们不能在接口/抽象类中使用共享(静态)函数/方法?

在.net中,我们不允许在抽象类和接口中共享函数/方法.为什么他们不被允许?

在其他语言中也是如此.喜欢Java?

如果允许共享方法,可能会出现什么问题?

.net

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