我有一个类,我想用作回调的方法.如何将它们作为参数传递?
Class MyClass {
public function myMethod() {
$this->processSomething(this->myCallback); // How it must be called ?
$this->processSomething(self::myStaticCallback); // How it must be called ?
}
private function processSomething(callable $callback) {
// process something...
$callback();
}
private function myCallback() {
// do something...
}
private static function myStaticCallback() {
// do something...
}
}
Run Code Online (Sandbox Code Playgroud)
UPD:如何从static
方法中做同样的事情(什么时候$this
不可用)
我已经创建了我的实例的快照,并在数据库中做了一些不必要的更改.
现在我想从这个快照中恢复我的实例.
当我尝试这样做时 - 除了我拥有的实例之外,它还创建了一个实例.
我指定"数据库实例标识符",然后我得到两个具有相同ID的实例.
所以我的问题是:有没有办法将快照恢复到现有实例?
因为在其他情况下 - 使用不同的端点(主机名)创建新实例,我需要更改我的配置以访问数据库.或者有更好的方法来管理这种情况?
我正在尝试使用PHP 7 RC3
+ Nginx
on 设置webserver Ubuntu 14.04
(用于测试目的).
我使用ubuntu/trusty64
来自OndřejSurý的PHP 7 RC 3(https://launchpad.net/~ondrej/+archive/ubuntu/php-7.0)在Vagrant中安装了Ubuntu .
我找不到安装方式MySQL PDO
(PHP看到PDO
类,但没有任何与MySQL相关的东西,比如PDO::MYSQL_ATTR_DIRECT_QUERY
等)
看起来没有LIB php7.0-mysql
(通过与标准类比php5-mysqlnd
和php7.0-fpm
从的Ondrej等)
节PDO
中phpinfo()
:
PDO support enabled
PDO drivers no value
Run Code Online (Sandbox Code Playgroud)
我怎么才能得到它?
我试图了解Docker的概念,但有一点我无法理解:
据我所知,图像(因此 - 容器)可以从不同的Linux发行版中实例化,例如Ubuntu,CentOS等.
让我们说在主机上我运行标准的Ubuntu 14.04,
额外问题:如果开发人员未在Docker集线器描述中指定它,我如何知道用于图像的基本图像?
先感谢您!
我的 VS Code 不会从node_modules
.
我试图让它在两台 PC 和一台 Mac 上运行 - 结果是一样的:在我输入时没有建议导入,当我专注于一个符号并按Ctrl+.
/时没有选项Cmd+.
- 没有快速修复建议。
我尝试安装自动导入扩展 - 没有建议。
我阅读了有关“添加所有丢失的导入”的发行说明帖子,并尝试应用快捷方式 - 不走运,它没有做任何事情。
在这一点上我完全迷失了,我看到很多帖子有人问同样的问题,人们建议他们通过按 Ctrl+ 来使用 Quick Fix。但正如您在屏幕截图中看到的那样 - 它没有任何建议。
我正在使用 TypeScript,但我也用 JS 尝试过这个 - 不走运。
在屏幕截图上,我在 WSL 中运行我的应用程序,但我也在 Windows 和 macOS 上尝试了本机运行。
有任何想法吗?谢谢!
Laravel假定该.env
文件应描述环境,并且不应该将其提交给您的repo.
如果我想在我的仓库中保留两个.env
文件dev
和production
(说.env-production
和.env-dev
)并添加一些应该使用哪个文件的自定义逻辑,例如基于当前域名,该怎么办?
就像是
if ($_SERVER['HTTP_HOST'] == 'prod.domain.com') {
load('.env-production');
} else {
load('.env-dev');
}
Run Code Online (Sandbox Code Playgroud)
我怎样才能实现它?谢谢!
我正在寻找一种简单的存储缓存的方法,Redis
并使用标记标记缓存tags
,因此在需要时,我可以轻松删除所有标记有特定标记的缓存。
是否有一个好的即用型解决方案?(我将在PHP中使用访问Redis)
我自己做,因为据我所知,我需要将标签存储为一组,其中值是使用标签的缓存键。我什至可以解决删除缓存时的情况,并且应该从标记的集合中删除其键(为此,我可以将标记列表存储在缓存的元素中)。但是我不确定缓存过期时如何执行此操作,在这种情况下,其密钥会“卡在”标签中,而下次我按标签删除缓存时,它将用密钥清除缓存,而该密钥可能不再使用。
因此,我正在寻找现成的解决方案,至少要看它是如何完成的。
我正在尝试测试一些代码,为此我需要在循环中进行一些测试,如下所示:
for (var i = 1; i <= 5; i++) {
QUnit.test('Hello ' + i, (assert) => {
console.log(i);
assert.ok( 1 == '1', 'Result: ' + i);
});
}
Run Code Online (Sandbox Code Playgroud)
但由于某种原因i
,循环(和结果)总是6
如此,所以这段代码给出了这样的输出:
6
6
6
6
6
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
我有一个带有键入键的对象,我们称它们为状态(StatusesType
)。我需要遍历对象,并将键传递给需要相同类型参数的某些方法StatusesType
,让它成为statusPrinter()
type StatusesType = 'PENDING' | 'APPROVED' | 'REJECTED';
type SomeMap = {
[key in StatusesType]?: number
}
const STATUSES: SomeMap = {
PENDING: 5,
REJECTED: 2,
};
function statusPrinter(val: StatusesType) {
console.log('- ', val);
}
Object.keys(STATUSES).forEach(status => {
statusPrinter(status);
});
Run Code Online (Sandbox Code Playgroud)
但是当我调用statusPrinter(status);
TypeScript返回此错误时
error TS2345: Argument of type 'string' is not assignable to parameter of type 'StatusesType'.
如何传递此密钥保存类型?
我知道我可以为此强制执行TS,statusPrinter(<StatusesType>status);
但是我认为这是我应该做的最后一件事,我更喜欢本机解决方案。
更新:如果无法使用Object.keys()
保留类型遍历对象键-我有哪些选项?有没有一种方法可以遍历所有键保留类型,如果可以,哪种方法最好?我没有固定,Object.keys()
但我想保留原始的对象结构。
谢谢!
我试图使用React
和启动一个新项目TypeScript
,但我坚持使用的一件事是Router
,由于某种原因TypeScript不承认history
属性,尽管根据文档它应该可用。
我的组件
import * as React from 'react'
import * as ReactDom from 'react-dom'
import { Provider } from 'react-redux'
import { BrowserRouter as Router} from 'react-router-dom';
import createBrowserHistory from 'history/createBrowserHistory'
let history = createBrowserHistory();
ReactDom.render(
<Provider>
<Router history={history} > {/* Error is in this line */}
<div />
</Router>
</Provider>,
document.getElementById('app')
);
Run Code Online (Sandbox Code Playgroud)
错误信息:
Error:(11, 11) TS2339:Property 'history' does not exist on type 'IntrinsicAttributes
& IntrinsicClassAttributes<BrowserRouter> & Readonly<{ children?: ReactNode; …
Run Code Online (Sandbox Code Playgroud) php ×4
javascript ×2
mysql ×2
typescript ×2
amazon-rds ×1
caching ×1
callback ×1
docker ×1
frontend ×1
jquery ×1
laravel ×1
oop ×1
pdo ×1
php-7 ×1
qunit ×1
react-router ×1
reactjs ×1
redis ×1
tagging ×1
ubuntu ×1