草庐IT

location_var

全部标签

php - 等效于 PHP 中的 escape(window.location.href)

我已经尝试了很多组合来获得我的页面的正确路径,比如javascript代码escape(window.location.href)我试过这个:$url="http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]$_SERVER[QUERY_STRING]";但它返回类似的东西:http://www.mydomain.com/node/4158?asdf=1asdf=1当实际页面是:http://www.mydomain.com/node/4158?asdf=1如果我有这个URL:http://www.mydomain.com/node/4158#c

如果在函数调用中分配了 var,PHP 将忽略通过引用传递

我有两个功能functionc(&$x){$x=25;echo'ciscalled,x='.$x.PHP_EOL;}functionb(){echo'biscalled'.PHP_EOL;return5;}然后我编写了下面的代码,正如我所期望的那样,它应该将b()的结果放入$o,然后通过引用将$o传递给c()并将其设置为新值。它工作正常:$o=b();c($o);echo'ois'.$o;输出符合预期:biscalledciscalled,x=25ois25但是如果我尝试在这样的函数调用中分配$o的值:c($o=b());echo'ois'.$o;我得到奇怪的输出biscalledci

php - filter_var($url, FILTER_VALIDATE_URL) 在 PHP 5.3.2 中表现怪异

由于某些奇怪的原因,下面的函数表示此url“paradox-productions.net”在http://alpha.shurl.be/上无效在我的本地主机上有效。它是PHP中的错误还是可能导致此问题的原因?谁能证实这一点?可以解决还是我需要在我的服务器上升级PHP?php信息:http://alpha.shurl.be/phpinfo.php功能: 最佳答案 这是PHP5.3.2中的一个已知错误。它认为带有破折号的URL无效。参见https://bugs.php.net/bug.php?id=51258.您的本地PHP必须是不存

php - 奇怪的 var_dump 行为

我有以下代码行:var_dump(array());在一个文件中,它输出这样的:array(size=0)empty在第二个文件中,它输出这个:string'array(size=0)empty'(length=119)知道是什么原因导致第二个文件出现这种情况吗?当我查看第二个文件的呈现标记的来源时,我看到了:string'<preclass='xdebug-var-dump'dir='ltr'> <b>array</b><i>(size=0)</i> <i><

php - filter_var 和 filter_input 之间的区别

为什么这不起作用:if(!($data['email']=filter_var(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))){$errors['email']='InvalidEmail.';}这是有效的:if(!($data['email']=filter_input(INPUT_POST,'email',FILTER_SANITIZE_EMAIL))){$errors['email']='InvalidEmail.';}这里的区别是filter_var和filter_input,当我点击提交时filter_var没有提交表单,而是提交了fi

javascript - 如果重新加载同一页面,window.location.replace 将不起作用

我正在尝试刷新Ajax成功页面。varlastId="#"+id;window.location.replace("/myurl"+lastId);它正在将正确的URL写入我的浏览器,但我没有看到所做的更改。如果我刷新(F5)页面,我会正确地看到更改,因为ajax已正确发送。所以我认为如果url相同,页面将不会强制刷新。在这个例子中,我已经在http://mypage.com/myurl,它应该将我重定向到http://mypage.com/myurl#38174例如,所以我的浏览器将关注具有id="38174"的DOM元素。正如我所说,如果我提交ajax请求,我的url将更改为htt

php - php.ini 中的 max_input_vars 实际影响什么,什么是安全的高值?

我知道max_input_vars的php.ini值默认为1000(我使用的是5.6版)。我的POST数据被截断了,所以我需要增加值。这确实解决了我的问题。更改这些值时,我只想了解它实际上具体影响了什么。如果我向后端发送一个数据数组,这是否意味着它只能包含大约1000个元素?我的表格总和似乎没有达到1000个输入字段,所以我想弄清楚这个数字是干什么用的。我可以达到的安全上限是多少?10000会不会太高了? 最佳答案 基本上这就是我们所说的“健全性检查”。它将请求限制在合理的水平,以防止诸如拒绝服务攻击之类的事情发生。Fromthem

php - 比较除 pdo var 之外的两个对象

对于我的php项目,我创建了应该进行比较的组对象。因为它们有一个存储在变量中的PDO连接,所以==运算符将始终返回false,因为一个变量不相等。除了比较这个唯一的PDO变量之外,有没有办法比较这些对象?我能想到的唯一方法是一个巨大的for循环来检查每个变量。如果有人知道更聪明的方法,我会很高兴。 最佳答案 使用这个函数。它将使用反射来比较除$exceptParameter之外的每个属性var1=$var1;$this->pdo=$pdo;}}$a=newTest("test1","test2");$b=newTest("test1

PHP如何将函数中的对象var_dump写入数据库?

我使用CodeIgniter,我在模型中有一个函数createRecord:publicfunctioncreateRecord($aRecordToSave){$oLatestRecord=$this->getLatestRecord($aRecordToSave[$this->sForeignKey]);var_dump($oLatestRecord);$this->db->trans_begin();$this->db->where($this->sForeignKey,$aRecordToSave[$this->sForeignKey]);$this->db->update($

PHP 浮点精度 : Is var_dump secretly rounding and how can I debug precisley then?

PHP中的float不准确是众所周知的(http://php.net/manual/de/language.types.float.php),但是经过以下实验后我有点不满意:var_dump((2.30*100));//float(230)var_dump(round(2.30*100));//float(230)var_dump(ceil(2.30*100));//float(230)var_dump(intval(2.30*100));//int(229)var_dump((int)(2.30*100));//int(229)var_dump(floor(2.30*100));//