我使用phpcs验证PHP代码:
phpcs --standard=PSR1 .
Run Code Online (Sandbox Code Playgroud)
它产生的输出充满了:
FILE: /home/travis/build/fulldecent/cameralife/setup/upgrade/upgrade.php
--------------------------------------------------------------------------------
FOUND 7 ERROR(S) AND 1 WARNING(S) AFFECTING 8 LINE(S)
--------------------------------------------------------------------------------
34 | ERROR | Line indented incorrectly; expected 4 spaces, found 8
...
Run Code Online (Sandbox Code Playgroud)
我尝试使用php-cs- fixer 修复此问题,但是它们不支持lexing并正确设置缩进,因此它只能转换标签.请参阅:https://github.com/fabpot/PHP-CS-Fixer/issues/229
由于phpcs自信地告诉我需要多少空格,有没有办法可以纠正整个项目所需的缩进?
这是代码,它是一个简单的容器.
class Application
{
private $recipes;
private $instances;
public function configureCache(XXXXXXXX $closure) {
$recipes['cache'] = $closure;
}
public function getCache(): Cache {
if (empty($instances['cache'])) {
$instances['cache'] = $recipes['cache']();
}
return $instances['cache'];
}
}
Run Code Online (Sandbox Code Playgroud)
此代码在PHP 7.1+上运行.我可以为XXXXXXXX填写哪些内容以使其最具体?类型是一个函数,更具体地说是一个返回Cache的函数.
我试图将按钮的样式设置为与链接的外观相同。这是我得到的最接近的结果:
<p>Hello <a href="aoeu">how</a> are you</p>
<p>Hello <button class="btn btn-link p-0 m-0 d-inline">how</button> are you</p>
Run Code Online (Sandbox Code Playgroud)
https://codepen.io/anon/pen/ZqvjyJ
这能实现吗?
我正在从Paul Hegarty的Stanford CS193P学习.然后我看到这样的东西,我也看到其他人使用:
- (id)init
{
self = [super init];
if (self) {
[self someSetupFunctions];
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
这不是多余的吗?为什么不使用:
- (id)init
{
self = [super init];
[self someSetupFunctions];
return self;
}
Run Code Online (Sandbox Code Playgroud)
我认为消息只是失败,所以为什么不使用这第二种格式?
我有一个课程,实现了我们都知道和喜爱的"拍照/选择图书馆".正是在这里https://github.com/fulldecent/FDTake这包括在我的其他项目通过git的子模块和工作正常.
现在我需要将该课程中的文本翻译成中文,因此它是"拍照/选照片"或类似的东西.有没有一种很好的方式将翻译放在那里,所以每个人都可以使用它们?
运行时,mysqldump -d
我得到这种格式:
--
-- Table structure for table `wp_users`
--
DROP TABLE IF EXISTS `wp_users`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `wp_users` (
`ID` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`user_login` varchar(60) NOT NULL DEFAULT '',
`user_pass` varchar(64) NOT NULL DEFAULT '',
`user_nicename` varchar(50) NOT NULL DEFAULT '',
`user_email` varchar(100) NOT NULL DEFAULT '',
`user_url` varchar(100) NOT NULL DEFAULT '',
`user_registered` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`user_activation_key` varchar(60) NOT NULL …
Run Code Online (Sandbox Code Playgroud) 我有一个从哈希图中获取内容的方法,一个简化的示例(虽然没有多大意义,但目前已经足够好了)是:
private Map<String,String> map = new HashMap<String,String>();
public String get(String key) {
return map.get(key);
}
Run Code Online (Sandbox Code Playgroud)
当给定键的条目明显不存在时,此方法可以返回null。事实是,我想对此方法进行注释@NonNull
(因为它用在了数不胜数的地方,而且我不喜欢Intellij向我发送有关生产NPE的检查警告,因此我不想关闭该检查,我也不想在每次调用此方法时都检查返回的值是否不同于null,这是因为我总是将此方法与始终在映射中的一堆键一起使用,因此由于程序逻辑,该方法是一定要返回一个@NonNull
值。
我很想只用来注释它@NonNull
,但谁知道有人可能用某处定义的键以外的名称来调用它,并实际上导致了NullPointerException。你会怎么做?一个断言听起来很诱人。还是您只是更改方法以引发RuntimException?还是AssertionError?
谢谢。
编辑:
这是实际的实现:
/**
* Typesafe heterogeneous container pattern - implementation
*/
public class HandlersMap {
private final Map<Class<? extends TableHandler>, TableHandler> handlers;
public HandlersMap() {
handlers = new HashMap<Class<? extends TableHandler>, TableHandler>();
putHandler(RolesTableHandler.class, new RolesTableHandler());
putHandler(UsersTableHandler.class, new UsersTableHandler());
putHandler(DevicesTableHandler.class, new DevicesTableHandler());
}
private <T extends TableHandler> void putHandler(@NonNull final Class<T> type, @NonNull final T instance) { …
Run Code Online (Sandbox Code Playgroud) 这是代码:
desc "Find 301 errors on production servers"
task :find301 do
command = "grep 'HTTP/1.1\" 301' /var/log/httpd/*ssl-access.log | grep -v 'gclid' | awk '{print \$7}' | sort | uniq -c | sort -nr"
production_servers.each do |server|
sh "ssh root@#{server} #{command}"
end
end
Run Code Online (Sandbox Code Playgroud)
是否有更好的方法来逃避shell命令,最好采用允许sh "ssh root@#{server} #{command}"
与任意command
s 一起使用的格式?
这是我的代码:
struct Algorithm {
let category: String = ""
let title: String = ""
let fileName: String = ""
}
let a = Algorithm(
Run Code Online (Sandbox Code Playgroud)
自动填充功能显示唯一有效的初始值设定项:
但我期待使用隐式初始化器
Algorithm(category: "", title: "", fileName: "")
Run Code Online (Sandbox Code Playgroud)
这给出了错误:
传递给不带参数的调用的参数
甚至还有另一个问题的屏幕截图显示此调用已成功使用.
我究竟做错了什么?
我在这做错了什么?
$ git submodule foreach git pull # fails
$ cd Submodules/MBProgressHUD/
$ git diff
$ git checkout master
$ git pull
$ cd ..
$ cd ..
$ git submodule foreach git pull # fails
$ cd Submodules/ShareKit/
$ ls
$ git pull master
$ git checkout master
$ git diff
$ git submodule foreach git pull # fails
$ git status
$ git fetch
$ git pull
$ git submodule foreach git pull # fails
Run Code Online (Sandbox Code Playgroud)
最后一个显示,但基本上他们都看起来像这样:
Entering 'Submodules/JSONKit' …
Run Code Online (Sandbox Code Playgroud) TCPDF的最小"hello world"示例是什么?
我在https://tcpdf.org/examples/上看到了60多个例子,它们都没有与作曲家一起使用,而且它们都非常复杂.
我正在寻找简单的东西,所以我可以开始学习.
在什么情况下将someEnum.describeConstable()
无法返回EnumDesc
?
即它将返回一个空Optional
。
php ×3
java ×2
annotations ×1
bootstrap-4 ×1
coding-style ×1
css ×1
git ×1
ios ×1
iphone ×1
java-12 ×1
localization ×1
mysql ×1
notnull ×1
objective-c ×1
pdf ×1
php-7 ×1
php-7.2 ×1
rake ×1
rakefile ×1
ruby ×1
signature ×1
swift ×1
tcpdf ×1
translation ×1
whitespace ×1