使用PHP验证crontab条目的最佳方法是什么?我应该使用正则表达式还是外部库?我有一个PHP脚本,用于添加/删除crontab文件中的条目,但希望能够通过某种方式验证时间间隔部分是否为有效格式.
任何人都可以为PHP脚本推荐一些有用的性能分析工具吗 任何可以帮助我找到有问题或异常缓慢的代码块,执行时间等细节的东西都会非常有用.我知道那里有工具,但我想知道人们推荐什么是最有用和精心设计的.
利用HTML5能力指定文件是否/如何缓存(在manifest.cache文件中),是否可以指定整个目录?我可以在CACHE:部分下放置一个路径到我的images目录并让它应用于该目录中的所有文件,还是我需要显式指定要缓存的图像文件?
换句话说,这可能吗?
CACHE MANIFEST
...
CACHE:
images/
Run Code Online (Sandbox Code Playgroud)
......或者也许这个?
CACHE MANIFEST
...
CACHE:
images/*
Run Code Online (Sandbox Code Playgroud)
......或者我必须这样做:
CACHE MANIFEST
...
CACHE:
images/logo.png
images/image01.jpg
images/image02.jpg
images/image03.jpg
... (etc)
Run Code Online (Sandbox Code Playgroud) 将"/ some/subdir"下面的任何内容重写为"/ some/subdir/projects"的最佳方法是什么,如下所示:
http://www.mydomain.com/some/subidr/test/
Run Code Online (Sandbox Code Playgroud)
......对此:
http://www.mydomain.com/some/subdir/projects/test/
Run Code Online (Sandbox Code Playgroud)
我发现了一个类似的问题,但解决方案在我的案例中似乎没有用.我目前的尝试到目前为止(似乎不起作用):
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/projects/.*$
RewriteRule ^(.*)$ /projects/$1 [L]
Run Code Online (Sandbox Code Playgroud)
编辑:我忘了提到.htaccess文件必须位于/ some/subdir内,因为我没有对服务器的web根目录的写访问权限.
PHP对象实例是否有可能销毁/取消自身?假设我有一个代表文件的类,然后我随后使用该类删除该文件.我可以以某种方式从其自己的方法中取消设置实例吗?
$file = new FileClass();
$file->copy('/some/new/path/');
$file->delete();
// ... at this point $file would be seen as unset.
Run Code Online (Sandbox Code Playgroud) 我只是好奇是否有任何项目试图将所有(或大多数)PHP的内置函数分组到更面向对象的类层次结构中.例如,将所有字符串函数分组为单个String类等.
我意识到这实际上不会解决任何问题(除非修改发生在PHP源代码级别),因为所有内置函数仍然可以在全局命名空间中访问,但它肯定会使可用性更容易.
所以我正在为我的网络应用程序设置一个安装程序,并有数据库凭据的输入字段.我的验证过程的一部分包括测试数据库连接(使用PHP的PDO库).如果连接失败,我希望能够区分错误的密码,错误的地址,不存在的数据库名称等,这样我就可以在表单上引用正确的输入字段.
是否可以指向一个引用,该引用概述了PDOException返回的可能错误代码/消息?
编辑:我想到这些错误代码/消息可能是特定于数据库的,并且本机数据库代码/错误可能只是通过.如果是这种情况,我目前只使用MySQL 5数据库.
最近我一直习惯于将整数值赋给常量,并简单地使用常量名作为识别其目的的手段.但是,在某些情况下,当需要字符串表示时,这导致需要编写类似typeToString($ const)的函数.显然这是低效和不必要的,但每隔一段时间只是一个问题.
所以我的问题是,我应该考虑其他任何权衡吗?哪种情况被认为更清洁/更符合标准?此外,大多数情况下性能差异是否可以忽略不计?
案例1 :(当不需要字符串版本时更快?)
class Foo {
const USER_TYPE_ADMIN = 0;
const USER_TYPE_USER = 1;
const USER_TYPE_GUEST = 2;
public $userType = self::USER_TYPE_ADMIN;
public function __construct($type) {
$this->userType = $type;
}
public function typeToString() {
switch($this->userType) {
case self::USER_TYPE_ADMIN:
return 'admin';
break;
case self::USER_TYPE_USER:
return 'user';
break;
case self::USER_TYPE_GUEST:
return 'guest';
break;
default:
return 'unknown';
break;
}
}
}
$foo = new Foo(Foo::USER_TYPE_GUEST);
echo $foo->typeToString();
// Displays "guest"
Run Code Online (Sandbox Code Playgroud)
案例2 :(需要字符串版本时更快/更容易)
class Foo {
const USER_TYPE_ADMIN = 'admin';
const USER_TYPE_USER …Run Code Online (Sandbox Code Playgroud) 我在使用DokuWiki玩jQuery时遇到了一些麻烦 - 有没有人已经成功完成了这个?
目前,包括各种JS功能破坏的jQuery重用,我无法追查问题的根源.有什么东西需要与jQuery冲突?
有没有办法隐藏表行而不影响整个表宽度?我有一些javascript显示/隐藏了一些表行,但是当行设置display: none;为时,表会缩小以适合可见行的内容.
php ×6
javascript ×2
oop ×2
performance ×2
.htaccess ×1
coding-style ×1
constants ×1
cron ×1
crontab ×1
css ×1
database ×1
dokuwiki ×1
html ×1
html-table ×1
html5 ×1
jquery ×1
mod-rewrite ×1
mysql ×1
offline ×1
pdo ×1
regex ×1
rewrite ×1
standards ×1
testing ×1
validation ×1
wrapper ×1
xhtml ×1