我没有找到关于字符串和null文档之间的兼容性的声明,但是在PHP 5.5上尝试这个:
echo 'foo' . null . 'bar';
Run Code Online (Sandbox Code Playgroud)
打印出来foobar.
我想知道这种行为是保证还是"安全"(在SQL中,例如,它不是)?或者问另一种方式:null在连接字符串之前我是否需要检查?喜欢
echo 'foo' . (($mystring === null) ? '' : $mystring) . 'bar';
Run Code Online (Sandbox Code Playgroud) 我在Debian 8(Jessie),64位.我安装了libxml2-dev,现在坐在/usr/include/libxml2/libxml.
但是当我这样做时(就像libxml医生说的那样)
#include <libxml/parser.h>
Run Code Online (Sandbox Code Playgroud)
我只在编译时得到(有gcc)
fatal error: libxml/parser.h: no such file or directory
Run Code Online (Sandbox Code Playgroud)
注意:在另一台机器上,使用旧的64位Suse,它libxml2-dev位于完全相同的路径中,与新的Debian相比没有设置其他环境变量,它的工作原理非常好.使用完全相同的makefile从一台计算机迁移到另一台计算机时出现问题.我需要的所有其他-dev库#include <path>在迁移之后(带有文档)在迁移之后(它们都已安装apt-get),只libxml2-dev在编译时找不到.
我需要做任何其他事情才能libxml2-dev看得见吗?
在 CMake 中是否可以以某种方式在参数列表中包含内联条件?
我想要的示例(整IF行不被解析,而是像字符串一样处理,但我希望它被解析):
LIST(APPEND myList
foo
bar
IF(MINGW) hello ENDIF()
cool
)
Run Code Online (Sandbox Code Playgroud)
而不是我现在拥有的
LIST(APPEND myList
foo
bar
)
IF(MINGW)
LIST(APPEND myList hello)
ENDIF(MINGW)
LIST(APPEND myList cool)
Run Code Online (Sandbox Code Playgroud)
与示例类似的内容将使我的 CMakeLists.txt 文件在许多地方更容易阅读!特别是如果需要保留特定的顺序,有时如果没有内联条件,CMake 代码就会变得非常大,因为每次都需要重复相同的调用。
注意:我LIST在这里作为一个例子,这个问题也应该被视为其他函数的一般性问题!
我使用的是德语 Windows 8.1 64 位和 gnuplot 4.6.5,使用svg终端。如果我绘制包含大数字(例如“一百万”)的数据文件,gnuplot 不会打印数字分组符号。
例如,如果我的数据文件的值约为一百万,我希望 y 轴上的数字显示为1.000.000(.是群符号,而不是小数符号!),但 gnuplot 只给我1000000.
该选项set decimalsign locale仅更改小数点符号(整数和小数部分之间的分隔符,就像小数点符号1+1/2 = 1,5一样)。,但无论是设置decimalsign还是不调用该命令,都不会在图中显示数字分组符号。我只会变得丑陋1000000or1500000代替1.000.000or 1.500.000。
我也尝试过
set decimal locale
set format y "%'f"
Run Code Online (Sandbox Code Playgroud)
这只是给了我标签“%'f”,而不是数字!每次抽动都只有“%'f”,一次又一次。它只是将格式字符串按原样打印到图中,根本不打印任何数字。控制台输出decimal_sign in locale is ,对于德语语言环境来说是正确的,因此 gnuplot 可以正确识别它。.在我的 Windows 控制面板中,千位分隔符和小数点均已正确设置,。
手动设置 tic 是不可能的。也就是说,set ytics add ('1.000.000' 1e6)对于我来说,几十个抽动症是没有选择的。
如何在 gnuplot 中自动获取千位分隔符?
我想在我的网站上使用MathJax,该网站的网站空间有限,不应该有跨网站请求(隐私,加载时间).但是整个MathJax工具都是50+ MB.我真的需要它的一切吗?我已经删除了docs,test因为服务器上不需要这样做,但它们只有一些KB.
整个MathJax工具集的哪些部分我真的需要让它工作?我想我也可以删除unpacked文件夹(15+ MB)?还有什么我不需要节省空间?MathJax运行的基本要素是什么?
我有一个用 PHP 编写的简单记录器类。它写入的文件应该具有最大大小。我知道我可以用 截断文件ftruncate($filename, $size),但这会在最后删除内容。所以我想做的是以下内容:
if(filesize($filename) > $mySize) {
//remove X bytes at BEGINNING of $filename
}
// append log message
$handle = fopen($filename, 'a+');
if($handle !== false) {
fwrite($handle, $myMessage);
fclose($handle);
}
Run Code Online (Sandbox Code Playgroud)
这样日志会随着时间的推移“滚动”文件,而不是无限增长(最终崩溃到 2GB,这signed int是 PHP的限制)。
删除文件开头而不必担心性能的最佳方法是什么?我认为将文件逐行读入另一个缓存文件很慢,特别是如果日志记录发生得相当频繁。有没有更好的办法?
我真的很喜欢 gnuplot svg 输出,但是有没有办法定义gnuplot 生成的<title></title>和<desc></desc>标签?
标题默认为<title>Gnuplot</title>和描述为<desc>Produced by GNUPLOT 4.6 patchlevel 5</desc>(或分别使用的版本)。
有没有办法用 gnuplot 脚本代码更改这些,或者是编辑输出 svg 文件的唯一方法?
我阅读了很多教程,CFLAGS并查看了官方文档.他们所说的任何地方CFLAGS都是隐式的,但仍然在它们的示例makefile中明确地将它传递给编译器:
CFLAGS=-O2
gcc $(CFLAGS) -c foo.c -o foo.o
Run Code Online (Sandbox Code Playgroud)
那么,"隐含"一词在这种背景下意味着什么呢?如果我CFLAGS=-O2在我的makefile中声明,稍后再说gcc -c foo.c -o foo.o,是否-O2会激活(那么,它是否真的隐含)?如果是这样,为什么所有教程(包括官方文档)仍然在他们的示例中明确地传递它?
如何在Linux上找到文件名短于n个字符的文件?
例如,要使用某些东西,我会递归查找/home/myuser其中长度小于5个字符的所有文件名(因此,foo应找到一个带有名称的文件,但名称barbaz不是因为其名称长度超过4个字符) -我怎么能这样做?
比方说,在C++ 11中,我做到了
auto a = 4;
Run Code Online (Sandbox Code Playgroud)
会a是什么?的int(因为我经常读),一个unsigned int,一个short,一个long,一个size_t,一个char?是否auto始终定义了行为,它是否始终是每个编译器和每个体系结构上完全相同的类型(具有完全相同的位长!)?
另一个例子:
class A{};
class B:A{};
auto x = new B();
Run Code Online (Sandbox Code Playgroud)
会不会x是类型*B或类型的*A?每个编译器和平台上始终相同?两者都是完全合法的,编译器如何知道我打算使用哪一个?
是否有auto行为的确切列表?
我如何设法使TortoiseSVN(Windows 8上的64位)忽略所有Thumbs.db文件?我知道Settings-> Global Ignore Pattern存在.我进入了
*.db Thumbs.db thumbs.db
Run Code Online (Sandbox Code Playgroud)
在其他条目中,默认情况下.但是TortoiseSVN仍然不会忽略Thumbs.db文件.它们弹出为ToirtoiseSVN想要添加并提交到repo的新文件.
我是否需要更改其他设置?
从 PHP7 开始,似乎可以像这样直接调用匿名函数:
(function () { echo 'Hello!'; })();
Run Code Online (Sandbox Code Playgroud)
我在一些开源代码库中偶然发现了这一点。我试图在 PHP 文档(包括变更日志和 RFC)中找到任何关于此的提示。似乎没有,似乎完全没有记录。
以这种方式调用函数是否安全,还是应该call_user_func();像过去那样使用?这是在某处记录的吗?
我知道这些问题和答案:
他们只是说它应该起作用以及它是如何起作用的。我知道这个。我的问题不是关于“如何”!这是关于这是否真的是一个官方的 PHP 功能,或者它是否只是“偶然”工作(因为它似乎没有记录)。
php ×3
gnuplot ×2
linux ×2
auto ×1
c++ ×1
cflags ×1
cmake ×1
debian ×1
file ×1
filesize ×1
find ×1
gcc ×1
implicit ×1
include ×1
inline ×1
javascript ×1
libxml2 ×1
localization ×1
logging ×1
makefile ×1
mathjax ×1
null ×1
plot ×1
size ×1
string ×1
suse ×1
svg ×1
svn ×1
svnignore ×1
thumbnails ×1
tortoisesvn ×1
truncate ×1
windows ×1