jjzjj

php - 为什么 sprintf 在这里返回 false?

我想弄清楚为什么sprintf在这里返回false。任何人都可以阐明吗?sprintf("selectdog_name,date_format(meet_date,'%D%M%Y')asdate,track_name,race_name,race_stakes,race_class,race_stakes,result_place,result_box,winner_name,winner_id,result_dog_trainer,race_distancefromdogjoinresultusing(dog_id)joinracerusing(race_id)joinmeetusi

php - 用 printf 右对齐

我有一本字典,其中的键和值都是字符串。我想在自己的行上打印每个键值对,键左对齐,值右对齐。Key1TestKey2BlahBlah等等...在PHP中执行此操作的最佳方法是什么?也许是使用printf的聪明方法? 最佳答案 试试这个:printf("%-40s","Test");40告诉printf填充字符串,使其有40个字符(这是填充说明符)。-指示在右侧填充(这是对齐说明符)。参见conversionspecificationsdocumenation.因此,要打印整个数组:$max_key_length=max(array_m

php - sprintf 参数交换和 HEREDOC

我正在尝试以这种方式在heredoc上使用sprintf。它不会工作。知道如何解决这个问题吗?$i=Notice:Undefinedvariable:sin 最佳答案 因为HEREDOC就像一个双引号字符串,PHP试图将$s作为变量插入。尝试NOWDOC相反$i= 关于php-sprintf参数交换和HEREDOC,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/19698602/

php - 用前导 0 填充计数器到 9,然后用 php 删除前导零

尝试用前导0填充到9,然后删除。01、02、03、04、05、06、07、08、09-10、11、12、14到目前为止我有这个: 最佳答案 您还可以使用str_pad() 关于php-用前导0填充计数器到9,然后用php删除前导零,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10424048/

php - 参数太少 sprintf

我以前做过很多次,重新使用传递给sprintf()函数的值。但是此代码返回“警告:sprintf()[function.sprintf]:...中的参数太少”消息。代码如下:$search_clause=sprintf("(msgBodyLIKE%%%1$s%%ORmsgSubjectLIKE'%%%1$s%%')",mysql_real_escape_string($match1));理想情况下,$match1的值将被插入到上面显示的SQLWHERE子句的段中-两次,每次都用“%”字符包裹以进行通配符搜索。如果$match1="test",$search_clause的结果字符串值为

php - 带 printf 的千位分隔符

如何在printf中使用千位分隔符(如逗号)?例子:printf("%d",$totals['Sold']);//needthousandseparatedprintf("%.2f",$totals['Fees']);//needthousandseparated更新这是我原来的:foreach(array_keys($totals)as$key){if(is_numeric($totals[$key])){$totals[$key]=number_format($totals[$key],2);}}echo"";echo"Totals:";echo"{$totals['Bought'

php - 在 PHP 中,为什么 echo 没有作为函数实现? (不是 echo 与 printf)

我只是好奇。在PHP中,为什么echo没有作为函数实现?为什么PHP不只给我们printf而从不告诉我们echo?请注意:这不是关于echo与printf的问题。我已经知道echo是一种语言结构。更新:顺便问一下,printf是使用echo实现的吗? 最佳答案 Echo不是函数,它不会像print那样返回值。打印也是一种语言结构-不需要括号。手册:echo-没有返回值。print-始终返回1。事实仍然是返回一个值会降低系统性能。所以..现在因为printf是一个函数(它返回输出字符串的长度)我认为答案是显而易见的。

java - 是否有用于解析 printf 格式字符串的 Java 库?

我正在为带有“printf”操作码的机器编写模拟器,虽然我知道Formatter类可能足以实际格式化字符串,但我需要一种方法来计算printf调用使用的参数。在我的脑海中,我可能会用正则表达式做一些事情来计算“%”的数量,但我不太熟悉格式字符串,所以我可能无法正确计算......(不包括逃脱的等等)编辑:我实际上需要参数的数量,以及参数#到参数类型的映射,因此,例如,“hello%s%+.3i”将给出{0->String,1->Integer 最佳答案 FormatStrings将每个%解释为占位符,将文字%转义为%%,因此它应该像

java - 更改 Java printf 中的默认填充字符?

如果我们做System.out.printf("%10s","1");默认情况下,将添加空格字符以填充10,对吗?有办法改变吗?我知道,您可以通过在s之前指定0来添加0,但是printf是否支持还要别的吗? 最佳答案 没有。空间是硬编码的。这是java.util.Formatter源代码的片段:privateStringjustify(Strings){if(width==-1)returns;StringBuildersb=newStringBuilder();booleanpad=f.contains(Flags.LEFT_JU

java - 在 java 中使用 printf 换行? %n 正确吗?

我是Java的新手,但我最终还是不知所措。我的程序可以正常运行,但打印时只需要格式化方面的帮助。if(count==3)System.out.printf("%-15s%15s%15s%15s%15s%n",n,"iscompatiblewith",dates[k],dates[k+1],dates[k+2]);我的输出是StaceyFrancisiscompatiblewithOwenFarrellJackCliffordJoshuaWatkins我希望我的输出是(不重复staceyfrancis的名字或“兼容”:StaceyFrancisiscompatiblewithOwenFa