草庐IT

array_of_time

全部标签

php - 为什么 in_array() 对 $_POST 不起作用?

我正在尝试检查用户从$_POST提交的数据是否至少具有与我传递的数组相同的元素。我这样做是因为稍后我将通过调用$_POST['element']使用这些元素,而且我不喜欢有关该元素不存在(未设置)的错误。:)我不想使用像isset($_POST['x'],$_POST['y'],$_POST['z'])这样的东西,因为每次我需要重写$_POST,它似乎也不可读。我尝试使用in_array(array('x','y','z'),$_POST),但它不起作用(它返回false当它应该返回true时)。任何想法如何使它工作?:)我确定我有空字符串,如$_POST['x']、$_POST['y

php - 在 PHP 中执行存储过程后调用 odbc_fetch_array 给出错误 [Microsoft][ODBC SQL Server Driver]Invalid Descriptor Index

因此,我尝试使用ODBC在SQL数据库中执行存储过程,但它返回错误odbc_fetch_array()[function.odbc-fetch-array]:SQLerror:[Microsoft][ODBCSQLServerDriver]InvalidDescriptorIndex,SQLstateS1002inSQLGetData这是PHP部分,非常标准...$id=240$user="user";$password="password";$server="server";$database="database";$con=odbc_connect("SERVER=$server;

PHP Array_intersect 在具有未知键数的多维数组上

我正在尝试在拥有资源(人员)的应用程序中制作高级搜索过滤器。我在1个多维数组中得到了所有结果。该应用程序的用户可以搜索人员的职位、技能、工作领域和国家/地区。我已经完成了查找符合用户给定条件的人员的部分。这些结果存储在一个多维数组中。如果用户正在寻找具有特定资源、职位和特定技能的人,则返回值是这样的:$realfilters=array(2){["resourcesWithJobtitle"]=>array(6){[0]=>string(1)"1"[1]=>string(2)"48"[2]=>string(2)"88"}["resourcesWithSkill"]=>array(9){

PHP:在作为 foreach() 主题的数组上使用 array_splice 会导致问题吗?

我正在编写一些类似于这样的PHP代码:foreach($filter[1]as$reject){$reject_processed=preg_replace('~\s~','',strtolower($filter[1][$reject]));if(array_key_exists($reject_processed,$list_of_common_replacements)){$filter[0][]=$list_of_common_replacements[$reject_processed];$filter[1]=array_splice($filter[1],$reject,1

php - time() 根据服务器返回不同的时间戳

我现在搜索了好几个小时,好像以前没有人遇到过这个问题。我在两台服务器上运行一个脚本,将当前时间戳写入数据库。两者具有相同的操作系统、软件...和相同的时区。现在我发现,一些时间戳和当前时间()之间的差异是一个负数(是的,计算是正确的:time()-$older_timestamp)我将time()转储到两台服务器上,结果:正好相差一小时。检查一下:time()onserver#1:-1hourtime()onserver#2:correcttimestamp因为time()应该始终基于UTC,所以我无法解释这是怎么发生的。有人知道吗?来自亚琛的问候 最佳答案

PHP array_key_exists 不起作用;数组不是多维的

我有世界上所有国家的数组:$countries=array("GB"=>"UnitedKingdom","US"=>"UnitedStates","AF"=>"Afghanistan","AL"=>"Albania","DZ"=>"Algeria","AS"=>"AmericanSamoa","AD"=>"Andorra","AO"=>"Angola","AI"=>"Anguilla","AQ"=>"Antarctica","AG"=>"AntiguaAndBarbuda","AR"=>"Argentina","AM"=>"Armenia","AW"=>"Aruba","AU"=>"A

PHP: array_diff - 删除一个值

我目前正在尝试使用array_diff从数组中删除1个值。代码现在看起来像这样:$item_id=501;$array=array_diff($user_items,array($item_id));用户项目数组:501,501,502,502数组中的正确结果:502,502是否可以只删除1x501而不是2x501值?或者换句话说:将删除限制为1个值那么数组是:501,502,502感谢任何建议 最佳答案 您可以使用array_search查找并删除第一个值:$pos=array_search($item_id,$user_item

php - json_encode 在 array_filter 之后有不同的结果

我希望json_encode返回这样的内容[{key:"value"},{key:"value"},...]相反,我得到的是这样的:{"1":{key:"value"},"2":{key:"value"},...}结果很好,直到我做了一个array_filter...奇怪...functionsomefunction($id,$ignore=array()){$ignorefunc=function($obj)use($ignore){return!in_array($obj['key'],$ignore);};global$db;$q="Somequery";$rows=$db->g

"start of string or pattern"的 PHP 正则表达式

这个问题在这里已经有了答案:Regexlookahead,lookbehindandatomicgroups(5个答案)关闭9年前。有没有办法(除了进行两个单独的模式匹配)在PHP中使用preg_match来测试字符串或模式的开头?更具体地说,我经常发现自己想要测试我是否有一个匹配模式,它前面没有任何内容,如preg_match('/[^x]y/',$test)(也就是说,如果y前面没有x,则匹配它),但如果它出现在$test的开头,则也匹配y(当它前面也没有x,但前面没有任何字符,因此[^x]构造将不起作用,因为它始终需要一个字符来匹配它。在字符串末尾也有类似的问题,以确定是否出现了

php - 匹配 HH :MM:SS time format in php? 的正则表达式

这个问题在这里已经有了答案:RegexpatternforHH:MM:SStimestring(2个答案)关闭9年前。HH:MM:SS的正则表达式是什么HH是hours,但不限于日期或时钟,它可以是从0到任何整数的任何数字MM是分钟,最大值是59,从00开始SS是Seconds最大值是59并且从00开始