草庐IT

xdebug_get_declared_vars

全部标签

php - 我可以让 xdebug 停止\中断异常吗? (Ubuntu/Netbeans IDE/PHP 5.4/CLI/xdebug)

我正在运行PHPCLI应用程序。如果我设置断点,xdebug会在断点处停止。如果我写xdebug_break();它也会停止。如果应用程序抛出异常,我可以让它停止吗?我的ini文件:php-i|grepphp.ini加载的配置文件=>/etc/php5/cli/php.inixdebug.remote_enable=1xdebug.remote_handler=dbgpxdebug.remote_mode=reqxdebug.remote_host=127.0.0.1xdebug.remote_port=9000 最佳答案 我知道这

php - file_get_contents 的超时在 PHP 中不起作用

我创建了一个类来在PHP中包含一些HTTP方法。在这里,我有一个用于HTTPPOST的方法publicfunctionpost($content,$timeout=null){$timeInit=newDateTime();$this->method='POST';$header=array();$header['header']=null;$header['content']=is_array($content)?http_build_query($content):$content;$header['method']=$this->method;if($timeout!=NULL)

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

php - file_get_contents https 超时 1 分钟?

当通过https访问某些资源时,我遇到了PHP的file_get_contents挂起60秒的问题。我不确定这是客户端还是服务器端问题。在客户端在命令行上工作:$URL="https://example.com/some/path"$wget"$URL"-O/dev/null-q#takesafewmilliseconds$curl"$URL">/dev/null#takesafewmilliseconds$php-r'file_get_contents("'"$URL"'")'#takes61s!在服务器上为正确的SSLvhost立即向Apache(2.4)访问日志写入一行,并返回2

PHP:$_GET 中的奇怪字符串编码

我有以下字符串由客户端发送到服务器:3%D3%E1f%7C%AF%B0a%B58%81%92%F9M%90%0CD%A0Y%9C//stringintheactualURL3Óáf|¯°aµ8’ùMDYœ//var_dump($_GET)原始字符串应该是:33D3E1667CAFB061B5388192F94D900C44A0599C我的问题是我不知道如何对此进行编码/解码以便我可以执行数据库搜索,因为归类类型不匹配。我尝试了urlencode/urldecode、mb_string_convert、utf8_encode、iconv,但是没有运气。有什么想法吗?Laravel在尝试使

php - 使用 PHP 的 file_get_contents 后将类添加到 SVG 元素

我需要获取SVG图像并将图像插入页面。我正在使用以下方法获取图像:输出类似插入到页面后如何向SVG元素添加类?如:或定位到路径元素:任何帮助都会很好,谢谢! 最佳答案 您可以将svg存储为PHP变量,然后使用DOMDocument()功能来完成此操作。$svg=file_get_contents("logo.svg");$dom=newDOMDocument();$dom->loadHTML($svg);foreach($dom->getElementsByTagName('svg')as$element){$element->se

php - 是否有比 file_get_contents 占用更少内存或更有效的合并 MP3 的方法?

我需要将几个mp3文件合并为一个。我目前正在这样做:$combinedFiles="";$dir=$_POST['dir'];if($handle=opendir($dir)){while(false!==($entry=readdir($handle))){if($entry!="."&&$entry!=".."){$combinedFiles.=file_get_contents(urldecode($dir."/".$entry));}}closedir($handle);}file_put_contents("mp3/".$dir.".mp3",($combinedFiles)

python - PHP 的 error_get_last() 函数的 Python 替代品是什么?

我需要实现一个atexitPython函数来获取最后一个错误对象并检查它的类型。如果python错误的类型对应于PHP的E_ERROR,我应该将错误的输出保存到一个文件中。我正在移植的PHP代码如下所示:register_shutdown_function("fatal_handler");functionfatal_handler(){$error=error_get_last();if($error!=null&&$error['type']===E_ERROR)echo"recordFatalError:{$error['message']}\n";}我的代码截图如下:deffa

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

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

php - Docker 和 XDebug 不读取断点 VSCode

在过去的6个月里,我一直在MAC上使用XDebug和PHP版本7.0.*,对Docker容器进行远程调试。我运行的是旧版本的docker,它使用VirtualBoxtoVMfordocker,一切正常。我最近将docker更新到版本17.03.1,除了xDebug问题外什么都没有。我已经通过存储库中的问题联系了vscode-php-debug的创建者,然后他指示我通过xdebug和/或docker解决这个问题。我的问题如下:XDebug正在运行并在我的容器上工作,xdebug日志显示它连接到我的IDE,但当我在VSCode中设置断点时它只是关闭连接,就好像没有断点一样。我发在vscod