Questions tagged «php»

PHP是一种广泛使用的高级动态,面向对象和解释性脚本语言,主要用于服务器端Web开发。用于有关PHP语言的问题。

8
在命令提示符下,PHP不被识别为内部或外部命令
使用以下命令运行命令时出现以下错误 php C:\xampp\htdocs>php 'php' is not recognized as an internal or external command, operable program or batch file. php在以下路径中运行命令时,我没有收到任何错误: C:\xampp\php>php //do not got error here 为什么会出现此错误? 无法将“ php”识别为内部或外部命令,可操作程序或批处理文件。
106 php  cmd  exe 

12
apc vs加速器vs xcache
我正在研究要使用其中哪一种,而我却找不到哪一种脱颖而出。 加速器比APC快,但是APC维护得更好。Xcache更快,但是其他的语法更简单。 任何人都有关于使用哪个以及为什么使用的建议?

6
isset()和empty()-使用什么
您能否帮助我改善编码风格?:)在某些任务中,我需要检查-变量为空还是包含某些内容。为了解决此任务,我通常执行以下操作。 检查-是否设置了此变量?如果已设置-我检查-它是否为空? <?php $var = '23'; if (isset($var)&&!empty($var)){ echo 'not empty'; }else{ echo 'is not set or empty'; } ?> 我有一个问题-我应该在empty()之前使用isset()吗-有必要吗?TIA!
105 php 

6
HTML DOM标签上的PHP DOMDocument错误/警告
我一直试图解析HTML5代码,以便可以在代码中设置属性/值,但是DOMDocument(PHP5.3)似乎不支持诸如<nav>和的标记。<section>。 有什么方法可以在PHP中将其解析为HTML并处理代码? 复制代码: <?php $dom = new DOMDocument(); $dom->loadHTML("<!DOCTYPE HTML> <html><head><title>test</title></head> <body> <nav> <ul> <li>first <li>second </ul> </nav> <section> ... </section> </body> </html>"); 错误 警告:DOMDocument :: loadHTML():在实体中的标签导航无效,第17行在/home/wbkrnl/public_html/new-mvc/1.php中的第4行 警告:DOMDocument :: loadHTML():标记部分在实体中无效,第17行在/home/wbkrnl/public_html/new-mvc/1.php中的第10行
105 php  html  domdocument 

7
写入MySQL时保留TextArea的换行
我正在使用文本区域使用户能够输入评论。但是,如果用户输入新行,则新行在输出时不会出现。有什么办法可以使换行符停留。 知道如何保存换行符吗?
105 php  mysql  html 

5
我应该为mp3使用哪种MIME类型
我正在尝试决定选择哪种mime类型来返回mp3数据(由php提供) 根据此mime类型列表:http : //www.webmaster-toolkit.com/mime-types.shtml .mp3 audio/mpeg3 .mp3 audio/x-mpeg-3 .mp3 video/mpeg .mp3 video/x-mpeg 这些之间有什么区别,我应该使用哪个?
105 php  mp3  mime-types 

17
我应该在哪里使用isset()和!empty()
我在某处读到该isset()函数将空字符串视为TRUE,因此isset()这不是从HTML表单验证文本输入和文本框的有效方法。 因此,您可以empty()用来检查用户是否键入了某些内容。 isset()函数将空字符串视为是真的TRUE吗? 那我应该在什么情况下使用isset()呢?我应该经常!empty()检查是否有东西吗? 例如代替 if(isset($_GET['gender']))... 使用这个 if(!empty($_GET['gender']))...
105 php  isset 

2
接口常数的优缺点
已关闭。这个问题是基于观点的。它当前不接受答案。 想改善这个问题吗?更新问题,以便通过编辑此帖子以事实和引用的形式回答。 6年前关闭。 改善这个问题 PHP接口允许在接口中定义常量,例如 interface FooBar { const FOO = 1; const BAR = 2; } echo FooBar::FOO; // 1 任何实现类都会自动提供这些常量,例如 class MyFooBar implement FooBar { } echo MyFooBar::FOO; // 1 我自己的观点是,全球都是邪恶的。但是我想知道接口常数是否同样适用。给定接口编码是一种好习惯,使用接口常量是在类上下文之外可以接受的唯一常量吗? 尽管我很想听听您的个人意见以及是否使用接口常量,但我主要是在寻找答案的客观原因。我不希望这成为投票类型的问题。我对使用接口常量对可维护性有什么影响很感兴趣。耦合。或单元测试。它与SOLID PHP有何关系?它违反任何被认为是PHP良好实践的编码原则吗?你明白了... 注意: Java也有一个类似的问题,其中列出了一些非常好的理由来说明它们是“不良实践”的原因,但是由于Java不是PHP,所以我觉得有理由再次在PHP标签中提出问题。
105 php  interface  constants 

9
PHP_SELF,PATH_INFO,SCRIPT_NAME,REQUEST_URI
我正在CodeIgniter中构建一个PHP应用程序。CodeIgniter将所有请求发送到主控制器:index.php。但是,我不喜欢index.php在URI中看到。例如,http://www.example.com/faq/whatever将路由到http://www.example.com/index.php/faq/whatever。我需要一种可靠的方法来让脚本知道其地址,因此它将知道如何处理导航。mod_rewrite根据CodeIgniter文档,我已经使用过。 规则如下: RewriteEngine on RewriteCond $1 !^(images|inc|favicon\.ico|index\.php|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 通常,我只是检查一下php_self,但在这种情况下,它始终为index.php。我可以从REQUEST_URI,PATH_INFO等获得它,但是我正在尝试确定哪一个最可靠。没有人知道(或不知道在哪里可以找到)之间的真正区别PHP_SELF,PATH_INFO,SCRIPT_NAME,和REQUEST_URI?谢谢你的帮助! 注意:我不得不添加空格,因为SO看到了下划线,并且由于某种原因使其变为斜体。 更新:修复了空格。
105 http  php  codeigniter 

9
如何使用PDO插入NULL值?
我正在使用此代码,但我感到无奈: try { $dbh = new PDO('mysql:dbname=' . DB . ';host=' . HOST, USER, PASS); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $dbh->setAttribute(PDO::MYSQL_ATTR_INIT_COMMAND, "SET NAMES 'utf8'"); } catch(PDOException $e) { ... } $stmt = $dbh->prepare('INSERT INTO table(v1, v2, ...) VALUES(:v1, :v2, ...)'); $stmt->bindParam(':v1', PDO::PARAM_NULL); // --> Here's the problem PDO::PARAM_NULL, null, '', 它们全部失败并抛出此错误: 致命错误:无法在/ opt …
105 php  mysql  pdo  null  sql-insert 

8
PHP YAML解析器
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实,参考或专业知识的支持,但是这个问题可能会引起辩论,争论,民意调查或扩展讨论。如果您认为此问题可以解决并且可以重新提出,请访问帮助中心以获取指导。 7年前关闭。 有谁知道一个很好的PHP YAML解析器?如果是这样,此库的优缺点是什么?
105 php  parsing  yaml 

6
正则表达式正好n次或m次
请看下面的正则表达式,这里X是任何正则表达式。 X{n}|X{m} 该正则表达式将测试确切X发生的时间或时间。 nm 是否有一个正则表达式量词可以测试的发生X恰好n或m次?
105 java  php  regex 

6
通过Active Directory使用LDAP在PHP中进行身份验证
我正在寻找一种通过PHP(通过Active Directory作为提供者)通过LDAP验证用户身份的方法。理想情况下,它应该能够在IIS 7上运行(adLDAP在Apache上运行)。有谁做过类似的事情,并且成功了? 编辑:我更喜欢一个库/类,其中的代码已经准备就绪...如果有人已经发明了轮子,那就太愚蠢了。

4
设置环境变量以在使用Apache时在PHP中进行访问
我有一个Linux环境,并且有一个PHP Web应用程序,该程序有条件地基于getenvPHP中使用的环境变量运行。我需要知道如何为应用程序正确设置这些环境变量。我不确定如何在Apache上进行设置。 另外,我需要能够为每个域分别配置单独的环境变量。 请提供有关如何实现此目标的建议。

16
提交表单后,如何在后台运行PHP脚本?
问题 我有一个表单,提交后将运行基本代码来处理提交的信息,并将其插入数据库中以显示在通知网站上。此外,我还有一个名单,他们注册了通过电子邮件和SMS消息接收这些通知的人员。此列表暂时是微不足道的(仅推送约150个),但是足以导致花费一分钟以上的时间来遍历整个订户表并发送150多封电子邮件。(由于批量电子邮件政策,电子邮件是根据我们的电子邮件服务器的系统管理员的要求单独发送的。) 在此期间,发布警报的个人将坐在表单的最后一页上将近一分钟,而不会对发布通知进行任何积极的强化。这导致了其他潜在的问题,我认为所有可能的解决方案都不理想。 首先,发布者可能认为服务器落后,然后再次单击“提交”按钮,导致脚本重新开始或运行两次。我可以通过使用JavaScript禁用按钮并替换文本来表示类似“正在处理...”的方法来解决此问题,但这并不理想,因为在执行脚本的过程中,用户仍然会停留在页面上。(此外,如果禁用了JavaScript,则此问题仍然存在。) 其次,张贴者在提交表格后可能会过早关闭标签或浏览器。该脚本将一直在服务器上运行,直到尝试写回浏览器为止,但是,如果用户随后浏览到我们域中的任何页面(在脚本仍在运行时),浏览器就会挂起加载页面,直到脚本结束。(只有在关闭浏览器的选项卡或窗口,而不是关闭整个浏览器应用程序时,才会发生这种情况。)但是,这并不理想。 (可能)解决方案 我已经决定将脚本的“电子邮件”部分分解为一个单独的文件,在发布通知后可以调用该文件。我最初想到的是在成功发布通知后将其放在确认页面上。但是,用户将不知道此脚本正在运行,并且任何异常对他们来说都是不明显的。该脚本不能失败。 但是,如果我可以将此脚本作为后台进程运行怎么办?因此,我的问题是:如何执行PHP脚本作为后台服务触发并完全独立于用户在表单级别执行的操作而运行? 编辑:这不能被cron'ed。它必须在提交表单后立即运行。这些是高优先级的通知。另外,运行我们的服务器的系统管理员不允许cron超过5分钟的时间运行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.