是否有内置方法来测量Windows命令行上命令的执行时间?
我已经在SO和其他几个网站上以几种不同的方式看到了这个问题,但其中大部分都是过于具体或过时的.我希望有人可以在这里提供一个明确的答案,而不必接受猜测.
有人用CSS或javascript来改变默认打印机设置,当有人在浏览器中打印时?当然,"来自浏览器的打印"是指某种形式的HTML,而不是PDF或其他一些插件依赖的mime类型.
请注意:
如果某些浏览器提供此功能而其他浏览器不支持(或者如果您只知道如何为某些浏览器执行此操作),我欢迎特定于浏览器的解决方案.
同样,如果您知道主流浏览器对EVER有特定限制,这也很有帮助,但一些相当最新的文档将不胜感激.(简单地说"违背XYZ的安全政策"并不是很有说服力,因为XYZ在过去三年中对所述政策做出了重大改变).
最后,当我说"更改默认打印设置"时,我并不是永远,只是为了我的页面,我指的是打印页边距,页眉和页脚.
我非常清楚CSS提供了更改页面方向和页边距的选项.Firefox的许多难题之一.如果我将页边距设置为1英寸,则将其加到已经放置的半英寸处.
我非常希望减少客户网站上PDF的使用,但是主要关注的是展示的侵权(以及缺乏可靠性).
我为我的Mac安装了mySQL.除了使用系统首选项中安装的mySQL.prefPane工具启动SQL服务器之外,我想知道从命令行启动的指令.我这样做:
后
苏根
我通过命令行启动mySQL服务器,它产生如下错误:
sh-3.2#/usr/local/mysql/bin/mysqld
111028 16:57:43 [警告]设置lower_case_table_names = 2,因为/usr/local/mysql-5.5.17-osx10.6-x86_64/data/的文件系统不区分大小写
111028 16:57:43 [ERROR]致命错误:请阅读本手册的"安全性"部分,了解如何以root身份运行mysqld!
111028 16:57:43 [错误]中止
111028 16:57:43 [注意]/usr/local/mysql/bin/mysqld:关闭完成
请帮我!
编辑:
原因在于:http://dev.mysql.com/doc/refman/5.5/en/changing-mysql-user.html
下面的xdazz答案中描述了一个解决方案.
我有一张表看起来像:
<table>
<tr>
<td>one</td><td>two</td><td>three</td><td>last</td>
</tr>
<tr>
<td>blue</td><td>red</td><td>green</td><td>last</td>
</tr>
<tr>
<td>Monday</td><td>Tuesday</td><td>Wednesday</td><td>last</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
我想要的是一个jquery选择器,它将选择除td
每个表行的最后一个之外的所有表.我试过了:
$("tr td:not(:last)").css("background-color","red");
//changing color just as a test...
Run Code Online (Sandbox Code Playgroud)
但是,不是所有单元格而是每行的最后一个单元格都被更改,所有单元格,但是表格中的最后一个单元格都被选中.同样,如果我将其更改为:
$("tr td:last").css("background-color","red");
Run Code Online (Sandbox Code Playgroud)
唯一改变的是最后一个细胞.如何选择每行的最后一个(或不是最后一个)?
我正在尝试连接到受密码保护且网址为https的Web服务.在脚本发出请求之前,我无法弄清楚如何进行身份验证.它似乎在我定义服务时立即发出请求.例如,如果我投入:
$client = new SoapClient("https://example.com/WSDL/nameofservice",
array('trace' => 1,)
);
Run Code Online (Sandbox Code Playgroud)
然后在浏览器上访问该站点,我得到:
Fatal error: Uncaught SoapFault exception:
[WSDL] SOAP-ERROR: Parsing WSDL: Couldn't load from
'https://example.com/WSDL/nameofservice' in /path/to/my/script/myscript.php:2
Stack trace: #0 /path/to/my/script/myscript.php(2):
SoapClient->SoapClient('https://example...', Array) #1 {main} thrown in
/path/to/my/script/myscript.php on line 2
Run Code Online (Sandbox Code Playgroud)
如果我尝试将服务定义为Soap服务器,例如:
$server= new SoapServer("https://example.com/WSDL/nameofservice");
Run Code Online (Sandbox Code Playgroud)
我明白了:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<SOAP-ENV:Fault>
<faultcode>WSDL</faultcode>
<faultstring>
SOAP-ERROR: Parsing WSDL:
Couldn't load from 'https://example.com/WSDL/nameofservice'
</faultstring>
</SOAP-ENV:Fault>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Run Code Online (Sandbox Code Playgroud)
我还没有尝试发送原始请求信封,看看服务器返回什么,但这可能是一种解决方法.但是我希望有人可以告诉我如何使用php内置类来设置它.我尝试将"userName"和"password"添加到数组中,但这并不好.问题是我甚至无法判断我是否到达了远程站点,更不用说它是否拒绝了请求.
我正在尝试编写一个PHP脚本,该脚本使用pdftk应用程序将XFDF与PDF表单合并,并将合并的PDF输出给用户.根据pdftk文档,我可以在via中传递表单数据stdin
并将PDF输出到stdout
流中.从命令行使用pdftk的常规文件非流方式是:
pdftk blankform.pdf fill_form formdata.xfdf output filledform.pdf
Run Code Online (Sandbox Code Playgroud)
要在命令行上使用流,您需要输入:
pdftk blankform.pdf fill_form - output -
Run Code Online (Sandbox Code Playgroud)
我有几个问题:
1)我已经通过stdout
使用xfdf文件(而不是stdin
)来获得pdftk返回输出,如下所示:
exec("pdftk blankform.pdf fill_form formdata.xfdf output -", $pdf_output);
file_put_contents("filledform.pdf",$pdf_output);
Run Code Online (Sandbox Code Playgroud)
但是根据Adobe Reader的说法,它创建的pdf是破坏的,并且用文本编辑器快速查看文件显示,至少,它并没有将行结束设置在应有的位置.我有一个相同的PDF由pdftk创建,它输出到一个文件,pdf在文本编辑器中看起来很好,所以我知道它不是pdftk输出坏数据.
2)我不能为我的生活弄清楚如何stdin
在PHP中设置流,以便我可以使用该流作为我的pdftk输入.从我在PHP文档中阅读的内容来看,它stdin
是只读的,那么如何进入该流?
理想情况下,我想保持这个非常简单并避免使用proc_open()
.我尝试使用该功能并且不是非常成功,这可能是我的错,而不是功能,但实际上我的目标很简单,我宁愿避免使用我不需要的强大功能.
理想情况下,我的代码看起来像:
$form_data_raw = $_POST;
$form_data_xfdf = raw2xfdf($form_data_raw); //some function that turns HTML-form data to XFDF
$blank_pdf_form = "blankform.pdf";
header('Content-type: application/pdf');
header('Content-Disposition: attachment; filename="output.pdf"');
passthru("pdftk $blank_pdf_form fill_form $form_data_xfdf output -);
Run Code Online (Sandbox Code Playgroud)
只是抬头,可以将实际的xml字符串放在命令行中,但是我的结果非常不可靠.
在很多帮助下,我现在明白我的真正问题是"如何在PHP中将变量传递给命令行执行".显然,proc_open是最好的方式,或者至少是最直接的方式.因为我花了很长时间才弄清楚,因为我对Google的研究表明其他人可能会苦苦挣扎,我会发布专门针对我的问题的代码:
$blank_pdf_form = …
Run Code Online (Sandbox Code Playgroud) 我想要一个bash方式从标准输入读取行(所以我可以输入管道),并只删除前导和尾随空格字符.管道回声不起作用.
例如,如果输入是:
12 s3c
sd wqr
Run Code Online (Sandbox Code Playgroud)
输出应该是:
12 s3c
sd wqr
Run Code Online (Sandbox Code Playgroud)
我想避免编写python脚本或类似的东西,因为这是微不足道的.任何帮助表示赞赏!
是否可以在PHP子函数中访问外部局部变量?
在下面的代码中,我想访问$l
内部函数栏中的变量.声明$l
是global $l
在酒吧不起作用.
function foo()
{
$l = "xyz";
function bar()
{
echo $l;
}
bar();
}
foo();
Run Code Online (Sandbox Code Playgroud) 首先,我在Google Chrome中工作,如果有帮助的话.这是行为:
我通过jQuery向远程站点发送xhr请求(这是一个chrome扩展,我设置了所有的跨站点设置......):
$.ajax({
type: "POST",
contentType : "text/xml",
url: some_url,
data: some_xml,
username: user,
password: pass,
success: function(data,status,xhr){
alert(data);
},
error: function(xhr, status, error){
alert(xhr.status);
}
});
Run Code Online (Sandbox Code Playgroud)
正在设置的URL返回302(这是预期的),Chrome遵循重定向(也是预期的).
新网址会返回凭据提示,这些提示不会从原始请求中提取,因此Chrome会显示登录对话框.如果我输入原始凭据,我会收到有关发送无效请求的响应(这是一个有效的HTTP请求 - 200 - 远程服务器只是不喜欢其中一个标头).
在Chrome中查看开发者窗口时,会发送两个请求.第一个是原始URL,其中包含AJAX请求中设置的所有设置.第二个是重定向URL,方法为"GET","POST"字段中没有任何内容,也没有凭据.
我不知道我能做什么.我要么:
获取重定向网址,以便我可以发送第二个请求(xhr.getResponseHeader("Location")
不起作用),
让新的重定向请求保留原始请求中的设置,或
获取错误来自的最终URL,以便我可以发送另一个请求.
理想情况下,我不希望用户必须在此对话框中第二次输入他们的凭据,但如果我能获得最终的URL,我会采取我能得到的.
我需要PHP中的正则表达式或函数,它将验证字符串是一个很好的XML元素名称.
表格w3schools:
XML元素必须遵循以下命名规则:
- 名称可以包含字母,数字和其他字符
- 名称不能以数字或标点字符开头
- 名称不能以字母xml(或XML或Xml等)开头
- 名称不能包含空格
我可以编写一个基本的正则表达式来检查规则1,2和4,但它不会考虑所有允许的标点符号,也不会考虑第3条规则
\w[\w0-9-]
Run Code Online (Sandbox Code Playgroud)
以下是格式良好的XML元素名称的权威来源:
名称和代币
NameStartChar ::=
":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] |
[#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] |
[#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] |
[#x10000-#xEFFFF]
NameChar ::=
NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040]
Name ::=
NameStartChar (NameChar)*
Run Code Online (Sandbox Code Playgroud)
还指定了单独的非标记化规则:
以字符串"xml"开头的名称,或者与任何匹配的字符串(('X'|'x')('M'|'m')('L'|'l'))的名称保留用于标准化在本规范的此版本或未来版本中.