PHP print
和echo
?有什么区别?
Stack Overflow有很多关于PHP print
和echo
关键字使用的问题.
这篇文章的目的是提供 关于PHP 和关键字的规范参考问题和答案print
,echo
并比较它们的差异和用例.
在阅读O'Reilly的"高性能MySQL"时,我偶然发现了以下情况
另一个常见的垃圾查询是SET NAMES UTF8,这是一种错误的做事方式(它不会改变客户端库的字符集;它只影响服务器).
我有点困惑,因为我曾经在每个脚本的顶部放置"SET NAMES utf8"让db知道我的查询是utf8编码的.
任何人都可以评论上述引用,或者,更正式地说,您的建议/最佳实践是什么,以确保我的数据库工作流是unicode意识.
如果这是相关的,我的目标语言是php和python.
是否可以/可行使用ObjC(不需要Apple风格)来开发服务器端Web应用程序?GNU ObjC工具链是否可用?请分享您的想法和经验.
UPD.我希望通过具体的实践经验听到更多的答案,比如"我试过/使用....而且很棒/很糟糕,因为......".300赏金!
UPD2.我的问题背后的基本原理是我即将开发一个带有大型基于Web的后端的iOS应用程序,并认为对两个部分使用相同的工具链/ IDE会更好.但是,唉,到目前为止的答案表明这是不可行的.谢谢大家花时间.
例如,这些是有效的数学表达式:
a * b + c
-a * (b / 1.50)
(apple + (-0.5)) * (boy - 1)
Run Code Online (Sandbox Code Playgroud)
这些是无效的数学表达式:
--a *+ b @ 1.5.0 // two consecutive signs, two consecutive operators, invalid operator, invalid number
-a * b + 1) // unmatched parentheses
a) * (b + c) / (d // unmatched parentheses
Run Code Online (Sandbox Code Playgroud)
我没有匹配浮点数的问题,但是括号匹配有困难.任何的想法?如果有比正则表达更好的解决方案,我也会接受.但正则表达式是首选.
========
编辑:
我想对我对"已接受的答案"的选择做一些评论,希望那些有相同问题并找到这个帖子的人不会被误导.
我认为有几个答案"被接受",但我不知道哪一个是最好的.所以我随机选择了接受的答案(差不多).除了接受的答案,我建议阅读Guillaume Malartre的答案.他们都为我的问题提供了实用的解决方案.有关严谨/理论上的答案,请在接受的答案下阅读David Thornley的评论.正如他所提到的,Perl对正则表达式的扩展(源于常规语言)使其"不规则".(我在我的问题中没有提到任何语言,所以大多数答复者都假设正则表达式的Perl实现 - 可能是最流行的实现.当我发布我的问题时,我也是如此.)
如果我上面说错了,请纠正我.
parseFloat(1.51e-6);
// returns 0.00000151
parseFloat(1.23e-7);
// returns 1.23e-7
// required 0.000000123
Run Code Online (Sandbox Code Playgroud)
我正在对包含各种浮点数的表列进行排序,其中一些以科学计数法表示.
我正在使用jQuery tablesorter2.0插件,它使用'parseFloat'来表示以数字开头的单元格.问题是parseFloat返回表示为1.23e-7的非常小的数字作为字符串,而不是将其扩展为0.000000123.因此,tablesorter将列的内容排序为文本而不是数字.
Run Code Online (Sandbox Code Playgroud)**Column To Sort** 2.34 1.01 13.56 1.23e-7 **After Sort Now** 1.01 1.23e-7 13.56 2.34 **Expect** 1.23e-7 1.01 2.34 13.56
是否有一种有效的方法可以将非常小的科学记数表示为扩展的浮点数?
解:
tablesorter根据第一个tablesorters自动解析器确定如何对列进行排序,以便为该列中单元格的内容返回true.如果单元格包含1.23e-7而不是默认按文本排序,因为'digit'解析器不会将其解释为数字.
因此,要解决此问题,以下代码将科学记数法编号表示为tablesorter可以解释/解析为数字的字符串,从而确保对列进行数字排序.@bitplitter - 感谢toFixed()提示.
var s = "1.23e-7";
// Handle exponential numbers.
if (s.match(/^[-+]?[1-9]\.[0-9]+e[-]?[1-9][0-9]*$/)) {
s = (+s).toFixed(getPrecision(s));
}
//returns 0.000000123
// Get a nice decimal place precision for the scientific notation number.
// e.g. 1.23e-7 yields 7+2 places after the decimal point
// e.g. …
Run Code Online (Sandbox Code Playgroud) 我尝试使用MYSQL实现按位过滤器(如果需要,使用udf)
过滤器类似于AND,但我想使用掩码来构建一个新的位串...让我用一个示例解释你:
假设我有一个存储8位流的blob表:
然后我有一个掩码应用于掩码值为1时从数据中获取位
因此得到以下预期结果:
有没有办法优化过滤,没有循环"掩码"的每一位,以获得"数据"行中的相应值...
澄清
我刚刚为帖子取了8位,但它更像是256字节
对于Joe:为了澄清这个例子,掩码00101011被解释为:从位置3,5,7,8的数据字段获取位值,如果从左到右读取掩码,从第1位枚举到第8位.希望这个澄清是"明确的"......
阅读这个问题由几个数组合并和分组我得到了以下想法:当使用多级数组时,可能重复键,有一个函数可以迭代这样的数组,因为它是平的,就像
foreach(flatten($deepArray) as $key => $val)....
Run Code Online (Sandbox Code Playgroud)
任何想法怎么写flatten()
?有没有标准的解决方案?
(注意,flatten()
由于重复键不能简单地返回一个新数组).
我正面临着重新刷新和更新近10年的Screenweaver项目的挑战,并寻找一个像样的现代swf-exe转换器.没有太多时间来评估所有选项,因此我希望听到具有此类工具的实际工作经验的回复.
由于必须使用WinAPI交互,因此默认投影仪不是一个选项.
类似的问题(那里没有具体的答案)
非常感谢
UPD:300人可以帮助我提供实用答案.
只是一个简单的问题
printf("%d", 99 || 44) prints "1" in C
print 99 || 44 prints "99" in perl
Run Code Online (Sandbox Code Playgroud)
有两种不同的评估方式.每个人都有名字吗?
编辑:我很想知道与C相比,这个Perl评估是如何被普遍调用的.当你说"C example是X,而perl示例不是X,而是Y"时,你将使用哪些单词用于X和Y."短路"不是我想要的.
我有一个很大的哈希表(带有字符串索引的数组),并寻找一个快速从中挑选第一个(理想情况下也是第N个)元素的函数.array_shift()
并且reset()
对我的需求来说太慢了.
更新:我也没有寻找基于参考的解决方案,该函数应该接受表达式,如get_first(some_func_returning_array())
答案 array_slice方法(kudos Gumbo)似乎是胜利者.完整的基准测试代码
function bigary($n) {
$a = array();
$s = range('A', 'Z');
do {
shuffle($s);
$a[substr(implode('', $s), rand(10, 20))] = $n;
} while(--$n);
return $a;
}
function timeit($name, $fn) {
global $results;
$loops = 1000;
$size = 5432;
static $a;
if(!$a) $a = bigary($size);
$t = microtime(1);
for($i = 0; $i < $loops; $i++)
$b = $fn($a);
$results[$name] = microtime(1) - $t;
}
timeit('dummy', function ($a) {
// benchmark …
Run Code Online (Sandbox Code Playgroud) php ×4
arrays ×2
mysql ×2
actionscript ×1
c ×1
c++ ×1
echo ×1
flash ×1
gnu ×1
javascript ×1
objective-c ×1
parsefloat ×1
parsing ×1
perl ×1
projector ×1
python ×1
regex ×1
windows ×1