草庐IT

VARIABLES

全部标签

php - 检查字符串是可变的还是只是一个字符串

我有一个变量叫做$Title有可能变量包含字符串,示例A:'Foo'但是变量也可以包含对不同变量的引用,示例B:'$Foo'当我使用print$Title时,php返回'Foo'(EXA)或'$Foo'(EXB)作为字符串。当我使用print$$Title时,php尝试返回名为$Foo(EXA)或$$Foo(EXB)的变量的值我想完成以下任务:当$Title只包含一个字符串时,打印该字符串当$Title包含对变量的引用时,查找该变量并显示其内容我可以只查找字符串中的第一个字符。当它是$使用echo$$Title否则使用echo$Title,但$Title可能包含如下内容:$Title=

php - 哪个性能更好 : double quoted strings with variables or single quoted strings with concatenations?

我知道在PHP中对字符串使用单引号比使用双引号更快,因为PHP不需要检查单引号字符串中是否存在变量。我的问题是哪个会表现更好:A)带有变量的双引号字符串:echo"foobar$baz";或B)带连接变量的单引号:echo'foobar'.$baz; 最佳答案 我做了一个benchmark这是我前一段时间在写的博客上的。然而,正如我所意识到的那样,有很多变数。其中最主要的是:您要进行多少次串联?每次执行连接时,PHP都会重新解析整个字符串(或者有人告诉我)。因此1个串联可能更快,但6个可能相当慢。数据类型。虽然我自己没有亲自测试过这

php - 通过调用另一个函数设置函数中的静态变量

我在PHP工作。我有一个函数(F1),它被调用的次数不定。在该函数中,我需要从另一个函数(F2)加载常量数据集。它总是加载相同的数据集,但是加载该集涉及一些数据库查找和处理。而不是重复调用F2并增加开销/冗余/处理要求,我想将结果放入F1中的静态变量中。但是,无论出于何种原因,它都不允许我使用函数调用将变量设置为静态。代码示例:functioncalledRepeatedly(){static$dataset=loadDataset();//someminorprocessinghereusingthedataset//andprobablyaloopreturn"stuff";}fu

php - {$variable} 在 PHP 中如何工作?

当我想在字符串中使用变量值时,我将它们与.(点)运算符。我看到有些人在字符串中使用{$variable}。所以..我的例子:"mynameis".$variable一些人使用它:"mynameis{$variable}"以上两个例子有什么区别? 最佳答案 当您想将字符串附加到字符串中变量中的值时使用它。$variable='hack';//nowIwanttoappend'ed'to$variable:echo"mynameis{$variable}";//printsmynameishackecho"mynameis{$varia

php - 严格标准 : Only variables should be passed by reference - php error

$file_name=$_FILES['profile_image']['name'];$file_ext=end(explode('.',$file_name));//line10$file_ext=strtolower($file_ext);$file_temp=$_FILES['profile_image']['tmp_name'];严格的标准:只有变量应该在第10行通过引用传递如何摆脱这个错误?请并谢谢你:) 最佳答案 end()期望它的参数能够通过引用传递,而只有变量可以通过引用传递:$array=explode('.',

php - 对象运算符中的变量

我试图在PHP中设置一个基于变量的对象运算符,但我只能在有限的范围内完成我正在寻找的东西。例如,以下代码允许进行变量选择:$var1='available_from';$keyValuePairs[$key]=$item->parent()->{$var1};但是,如果我想让父选择器也成为一个变量,我似乎就做不到了。以下两种方法均失败:$var1='parent()->available_from';$keyValuePairs[$key]=$item->{$var1};和$var1='parent()';$var2='available_from';$keyValuePairs[$k

php - 在 PHP 的 strtotime() 函数中传递变量

类似于此question,但我的具体问题没有答案。当前日期是2011-12-14,以备日后查看此题时引用。我试过这个:$maxAge=$row['maxAge'];//forexample,$row['maxAge']==30$cutoff=date('Y-m-d',strtotime('-$maxAgedays'));它为$cutoff:1969-12-31返回以下值我试过这个:$maxAge=$row['maxAge'];//forexample,$row['maxAge']==30$cutoff=date('Y-m-d',strtotime('-'.$maxAge.'days')

php - 为什么变量不能以数字开头?

我在PHP中工作,我必须按顺序定义变量以保存在Mysql中。在我的例子中,字段名和变量名必须相同。我可以这样声明一个变量吗$1OR$2etc如果不是为什么不,如果是为什么是?我试过:$id=0;$6=$_REQUEST['6'];$7=$_REQUEST['7'];$8=$_REQUEST['8'];$xary=array('6','7','8','9')$oAppl->save_record("tablename",$id,"id");这给我错误。我也可以在Mysql中创建和使用同名字段吗? 最佳答案 这就是PHP的设计方式。变量

php - Perl 有类似于 PHP 的 constant() 的东西吗?

我已经通过perldoc和O'Reilly书籍进行了一些挖掘,但还没有找到任何方法来做到这一点。我是否只能使用类似Readonly的东西??更新:我不反对Readonly。我只是想能够做一些类似于PHP的常量()的事情。如果Perl有constant()的例子:useconstant{FIELD_EXAMPLE_O=>345,FIELD_EXAMPLE_L=>25};my$var='EXAMPLE';my$c='FIELD_'.$var.'_L';my$value=constant($c);#$valueis25如果Readonly是最好的方式,那么我将使用它。

php - 为什么我们在 PHP 中将一些变量声明为 "$_variablename"...?

这个问题在这里已经有了答案:What'sthedealwithaleadingunderscoreinPHPclassmethods?(14个答案)关闭9年前。为什么我们在PHP中将一些变量声明为$_variablename?_是否定义了什么?请帮我解决这个问题,谢谢。