小编Joh*_*ith的帖子

Php,对象数组,获取对象的所有类名

我有一个数组:

$array = array();
$array[] = new Class1();
$array[] = new Class2();
$array[] = new Class3();

var_dump ($array); // returns the objects
var_dump (array_values($array)); // same as above
var_dump (array_keys($array)); // returns empty array
Run Code Online (Sandbox Code Playgroud)

我想要一些以['Class1','Class2','Class3']返回的东西,所以get_class()在每个对象上都有.

php arrays

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

通过subitems键转换数组的优雅方式

我有这个数组:

array (size=3)
  0 => 
    array (size=2)
      'name' => string 'XML' (length=3)
      'processer' => string 'XMLp' (length=12)
  1 => 
    array (size=2)
      'name' => string 'XML2' (length=3)
      'processer' => string 'XML2pr' (length=12)
  2 => 
    array (size=2)
      'name' => string 'CSV' (length=3)
      'processer' => string 'CSVp' (length=12)
Run Code Online (Sandbox Code Playgroud)

由于我不需要所有这些,我不是这个数组转换:

$a = array ('XML', 'XML2', 'CSV');
Run Code Online (Sandbox Code Playgroud)

所以得到'名字'.如何在PHP中优雅地做到这一点?

php arrays

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

div的动态宽度(像表一样)

我想用CSS做以下几点:

name1111 | x | name222  | dateeee | x
name11   | x | name22   | dateee  | x
name111  | x | name2222 | dateeee | x
name1    | x | name22   | daeee   | x
Run Code Online (Sandbox Code Playgroud)

我希望每列都是最大宽度.我的意思是,没有固定的宽度,但最长的内容会设置它.怎么做?过去桌子很容易,但现在似乎不可能

html css

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

可以用Php :: PDO完成嵌套数组/连接吗?

我很害怕,我问得太多了,但如果可能,我不想编码.存在"用户(ID,USERNAME)"和"图片(ID,USER_ID,NAME)"表.如果您想获取用户的图像,您只需使用:

SELECT*FROM users LEFT JOIN pictures ON pictures.USER_ID = users.ID;

但是返回一个简单的关联数组.我希望看到这样的事情:

 ID => 1
 USERNAME => "user1";
 pictures => array();

 ID => 1
 USERNAME => "user2";
 pictures => array();

 ID => 1
 USERNAME => "user3";
 pictures => array(
    ID => 1
    USER_ID => 3
    NAME = "picture of user3"
 )
Run Code Online (Sandbox Code Playgroud)

所以我想看到一个嵌套的multidimensinal关联数组,我不知道我是否从PDO请求太多.我想某处我应该为PDO设置外键.有任何想法吗?可以吗?我是PDO的新手

php mysql sql arrays pdo

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

Php,为什么破坏德米特定律如此糟糕?

我知道它被认为是坏的:

$this->laptop->getKeyboard()->getTouchpad()->getLbutton();
Run Code Online (Sandbox Code Playgroud)

要么

$this->laptop->getKeyboard()->getCapslock()->isLedOn();
Run Code Online (Sandbox Code Playgroud)

它被解释为"我们不想要大量的 - > - > - > - >" - 但我想让这种结构变得有形,我的意思是它不能脱钩.我理解,如果架构师改变了,它必须在任何地方完成,但它不会发生.再说一次,如何解决这个问题?

php law-of-demeter

0
推荐指数
2
解决办法
90
查看次数

Delphi 7,TFileStream 无法打开带有特殊字符的文件

这一行:

TFileStream.Create(fileName, fmOpenRead or fmShareDenyNone);
Run Code Online (Sandbox Code Playgroud)

如果文件名包含类似ñ 的内容,则丢弃异常

delphi delphi-7

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

更改背景图像不起作用

我的HTML,最初的background-image:

<div id="ffff" style="width: 200px; height: 200px; background-image: url('/uploads/backroundDefault.jpg')">sddsadsdsa<br>dffdsdfs</div>
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.然后:

$(document).ready(function() {
  $('#ffff').css('background-image', 'url(/uploads/lol.png) no-repeat');
});
Run Code Online (Sandbox Code Playgroud)

它没有效果

html javascript css jquery

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

php,如何防止直接类实例化?

假设我有一个非常普通的课程:

class Money
{
    public __construct($actualCountry)
    {
        $this->actualCountry = $actualCountry;
    }

    public function getValute()
    {
        return according to actual country
    }
}
Run Code Online (Sandbox Code Playgroud)

这个类需要创建一次,所以我有一个全局工厂:

final class Factory
{
    private $money;

    public function getMoney()
    {
        if ($this->money == null)
        {
            $this->money = new Money(Config::getCountryCode());
        }
        return $this->money;
    }
}
Run Code Online (Sandbox Code Playgroud)

每当我们想要使用:

Factory::getMoney()->
Run Code Online (Sandbox Code Playgroud)

但今天我看到我的同事试图这样做:

(new Money(Config::getCountryCode()))->getValute();
Run Code Online (Sandbox Code Playgroud)

这显然是错误的,不需要多次出现。但是类本身怎么能说“嘿,不要实例化我,使用工厂”呢?

我无法将其设置为单例,因为每次都会:

Money::getInstance(Config::getCountryCode());
Run Code Online (Sandbox Code Playgroud)

毫无意义。

但真正的问题不是因为它可能存在多个 - 这是我总是必须从配置中传递当前国家/地区的方式。什么是Config变得GlobalConfig?这就是为什么工厂要避免大量参数传递(如果有更多参数怎么办Money?)

php

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

Java,如果我想从函数中返回不同的类型怎么办?

public WHATTOWRITEHERE test()
{
    try
    {
        transaction.begin();
        code which may trigger exception
        transaction.commit();
        return true;
    }
    catch (javax.script.ScriptException ex)
    {
        transaction.rollback();
        return ex.getMessage();
    }
}
Run Code Online (Sandbox Code Playgroud)

打算执行某些操作,如果没有,则返回,true如果没有(发生错误),string则应返回此错误消息.它可以用Php但不能用Java

编辑:考试不能到外面,它必须在这里处理.

java

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

Php:警告:标题可能不包含多个标题,检测到新行

它难以置信.这是我得到的所有内容,在第一个执行的文件中:

header ("Pragma: public\r\nExpires: 0");die;
Run Code Online (Sandbox Code Playgroud)

和错误?警告:标题可能不包含多个标题,在... WTF中检测到新行?我var_dump()包含了包含的文件,但它只包含此文件.

php

-4
推荐指数
1
解决办法
6164
查看次数

标签 统计

php ×6

arrays ×3

css ×2

html ×2

delphi ×1

delphi-7 ×1

java ×1

javascript ×1

jquery ×1

law-of-demeter ×1

mysql ×1

pdo ×1

sql ×1