很多站长朋友们都不太清楚phpcli-d,今天小编就来给大家整理phpcli-d,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 如何在Ubuntu上使用eclipse搭建PHP开发和调试环境 2、 如何在CentOS 6上通过YUM安装Nginx和PHP 3、 如何让PHP能够读取系统环境变量 4、 如何使用Ubuntu中的Crontab定时执行PHP文件 5、 Mac OS MAMP PHP CLI 超慢解决办法 如何在Ubuntu上使用eclipse搭建PHP开发和调试环境1.安装Eclipse和PDT等插件:最简单的是从这个站点http //eclipse org/pdt/下载最新版本的PDT x.x All In Ones / Eclipse PHP Package
2.安装Java运行环境Jre/Jdk,注意JRE或者JDK的版本必须要满足Eclipse软件的最低需求
3. 安装配置xdebug(可以参考我的文章http //blog csdn net/huoyin/article/details/7538738),最好将这个文中的端口改为9000,这样在eclipse中就可以少配置一部分
4. 重启apache
sudo /etc/init.d/apache2 restart
5. 打开eclipse,建一个PHP项目,再建一个PHP网页
echo phpinfo();
保存,在firefox中测试看一下结果。这里要注意路径,一定要找得到文件。
6. 配制eclipse的浏览器
打开eclipse,找到window->preferences->general->web browser,看一下有没浏览器,没有就添加一下,当然是firefox
7. 配制运行及调试选项
window->preferences->PHP->>php executables->add->设置如下
php5
/usr/bin/php5 (注意这里要选择php5,不要是php,因为我们安装的是php5-xdebug)
8.建立PHP脚本后,最后调试运行
打开Run->Open Debug Dialog ,选择调试所需要用的名称和环境,仔细看一下,应该没问题。
然后就可以单步调试了。
主要的就这么多,其他的自己多摸索一下.
-----------------------------------------------------------------------------------------------------------------------------------
软件开发的断点调试是必不可少,这里介绍ubuntu中eclipse工具中php的调试配置。
本打算配置ZendDebugger 进行调试,配置了老长时间没配置成功,在phpinfo看不到ZendDebugger生效,经查发现是php5.3的问题,必须先卸载,本文介绍使用xdebug了。
软件安装太简单了,分别执行如下命令:
sudo apt-get install apache2
sudo apt-get install php5
sudo apt-get install php5-cli
sudo apt-get install php5-xdebug
php的配置:
php.ini在/etc/php5/下的几个文件夹里,应该有三个文件夹:apache2、cli、conf.d,我们应该修改apache2和cli 下的php.ini. 在conf.d下有一个xdebug.ini文件,记录了xdebug的文件路径。
sudo vi /etc/php5/apache2/php.ini
sudo vi /etc/php5/cli/php.ini
用超级用户权限分别打开上面说的两个php.ini,添加如下代码
[xdebug]
xdebug.remote_enable = 1
xdebug_remote_host = “localhost”
xdebug.remote_port = 9000
xdebug.remote_handler = “dbgp”
zend_extension=/usr/lib/php5/20090626+lfs/xdebug.so
重新启动apache:sudo /etc/init.d/apache2 restart
配置eclipse的调试和运行环境
打开eclipse的菜单-[windows]->[preferences]
选择php -debug在右面窗口中的php debugger中选择xdebug,下面的字符集选择与开发的代码字符集一致,然后应用。
选择php executables的窗口右面新建,名称:php5;excute phth:/usr/bin/php5;ini file :/etc/php5/apache2/php.ini;type:cli;debugger:xdebug。
好了,现在一切顺利,就可以进行断点调试程序了。
如何在CentOS 6上通过YUM安装Nginx和PHP在CentOS 6上通过YUM安装Nginx和PHP-FPM:
第一步,在/etc/yum.repos.d/目录下创建一个源配置文件nginx.repo:
cd /etc/yum.repos.d/
vim nginx.repo
填写如下内容:
[nginx]
name=nginx repo
baseurl=nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
保存,则会产生一个/etc/yum.repos.d/nginx.repo文件。
下面直接执行如下指令即可自动安装好Nginx:
yum install nginx -y
安装完成,下面直接就可以启动Nginx了:
/etc/init.d/nginx start
现在Nginx已经启动了,直接访问服务器就能看到Nginx欢迎页面了的。
如何让PHP能够读取系统环境变量一般情况下,都能实现显示phpinfo()的页面。就从能够显示该页面之后出现的问题说起。php的问题都会显示在phpinfo()页面上。首先查看自己的php.ini的路径是否正确。Q:我已经配置了php.ini文件,但重新启动服务器后为什么没有任何效果?A:这个问题主要有这几种情况。第一个原因是由于系统所读取的php.ini文件与你当时修改的php.ini文件不一致造成的1、 可以通过phpinfo()的Configuration File (php.ini) Path选项查看当前PHP服务器读取的是哪一个php.ini2、 如果你要更改php.ini的文件存取位置,可参考php.ini的搜索顺序,如下所示:a) SAPI 模块所指定的位置(Apache 2 中的 PHPIniDir 指令,CGI 和 CLI 中的 -c 命令行选项,NSAPI 中的 php_ini 参数,THTTPD 中的 PHP_INI_PATH 环境变量)b) HKEY_LOCAL_MACHINESOFTWAREPHPIniFilePath(Windows 注册表位置)c) PHPRC 环境变量d) 当前工作目录(对于 CLI)e) web 服务器目录(对于 SAPI 模块)或 PHP 所在目录(Windows 下其它情况)f) Windows 目录(C:windows 或 C:winnt),或 --with-config-file-path 编译时选项指定的位置3、 一般做法:通过设置PHPRC 环境变量,a) 操作:右击我的电脑->属性->高级->环境变量b) 在系统变量下新建一个“变量名为PHPRC ,变量值为你的php.ini文件所地文件路径”的环境变量第二个原因是:PHP没有找到相应的扩展库1、 查看PHP找到的扩展库位置:在phpinfo()的extension_dir选项可以看到2、 在php.ini更改extension_dir文件第三个原因:没有完全重启IIS1、 对php.ini的修改必须完全重启IIS才能起作用,而不能只是对当前站点进行重启。2、 进入cmd,停止服务器:net stop iisadmin;启动服务器:net start w3svcQ:我的PHP怎么没有办法激活MySql扩展库A:在PHP5.0以上版本,MySQL 默认未启用,因此需要咱们进行手工激活。1、 在PHP运行MySql,必须在 php.ini 中激活 php_mysql.dll 动态连接库,另外还需要访问 MySQL 客户端连接库即libmysql.dll文件2、 可以通过php.ini中的extension激活 php_mysql.dll 动态连接库;而libmysql.dll文件必须放在Windows 的系统路径 PATH才能访问,可以通过把libmysql.dll复制到system32目录下,也可以在PATH环境变量中新增一个路径。3、 建议做法:通过设置PATH,方便以后的php升级,在系统环境变量中的PATH后增加“libmysql.dll”所在的文件夹即可。记得通过“;”号隔开4、 [案例]最近,服务器总是找不到MySql扩展库,导致程序无法运行。因此,把所有文件删除后重新配置PHP服务器。但最后在安装MySql的时候,却始终无法激活MySql扩展库。在phpinfo()中找到的信息如下:PATH:c:phpPHPRC:C:phpextension_dir:c:phpext另外,我测试了将其它的库激活,如msql、gd2、xml,在phpinfo()都可以正常显示证明PHP能找到php_mysql.dll 动态连接库,而MySql的运行的另一个条件是能够讯问MySQL 客户端连接库即libmysql.dll文件,看来问题就在这里了。我对C盘搜索libmysql.dll文件,发现在system32和php文件夹各有一个文件,做好备份后,我尝试删除system32的libmysql.dll文件,发现被锁死,无法删除,却可以重新命名,我随便修改了名称,再重新启动IIS,服务器运行正常。补充一点:如果Configuration File (php.ini) Path 显示为C:Windows就说明,php.ini文件没有读取到。另外,我发现,在用IIS整合php时,有两种方式:ISAPI与CGI模式这两种方式,我们都可以看到phpinfo页面但是使用ISAPI模式,无法读取环境变量,所以通过环境变量PHPRC设置的php.ini路径无法找到。使用CGI就可以,这样就不必把好多文件拷到系统文件下。
如何使用Ubuntu中的Crontab定时执行PHP文件先确认自己在LINUX Ubuntu 服务器上php的安装模式,以CGI 模块还是Apache模块方式安装? 如果不确定php安装模式,可以使用 phpinfo() 函数查看:将<?php phpinfo(); ?> 写在php文件中上传到网站服务器,访问该页面,就在页面顶部我们找到“Server API”,如果类似“Apache 2.0 Handler”,那么就是apache模块;否则php是CGI 模式(shell 命令行模式)。这两种不同的php安装模式,正对应于前面介绍的ubuntu crontab 定时执行php的两种解决方法。
CGI 编译
如果Server API是cgi,那么在需要cron执行的php脚本的第一行额外加入一段代码#!/usr/bin/php -q(类似PERL语法),指定服务器中php可执行程序的位置,具体步骤如下:
1. 确认Ubuntu系统已经安装了php5-cli模块,安装命令:apt-get install php5-cli。在目录 /usr/bin/php下生成 php可执行程序。
2. 编辑待定时执行的php脚本文件crontab.php,如:
#!/usr/bin/php -q
<?php
$file = “/var/www/”.date(‘H’).’_’.date(‘i’).’_’.date(‘s’).’.txt’;
file_put_contents($file,date(‘Y-m-d’));
?>
3. 编辑 crontab 任务:
打开终端,输入命令:crontab -e,
Select an editor. To change later, run ‘select-editor’.
1. /bin/ed
2. /bin/nano <—- easiest
3. /usr/bin/vim.tiny
选择一个Ubuntu编辑器后,编辑/tmp/crontab.AuN7IQ/crontab 文件:
# m h dom mon dow command
在下面添加定时执行命令:
* * * * * php /path/to/your/cron.php
5个星号分别代表定时指定每分、小时、日、月、周。如每天的下午7点执行crontab.php,命令为:
* 19 * * * php /var/www/cron/crontab.php
然后按Ctrl+O保存,Ctrl+X退出。
4. 执行以下Crontab命令行
Shell> crontab crontab
确认crontab.php的权限为可执行("chmod 755 /var/www/cron/crontab.php")。
Apache 模块
如果php安装是以 apache 模式运行的,那么在要在ubuntu服务器定时执行的php脚本开头就不用加 #!/usr/bin/php -q 这一行。php脚本在ubuntu 通过crontab的定时执行通过Lynx浏览器的自动访问来完成。
1. Lynx浏览器安装。
Lynx浏览器是一款轻便的web浏览器,使用于大部分Unix 和Linux系统环境。安装命令:sudo apt-get install lynx。
2. 编辑cron任务,命令crontab -e
Mac OS MAMP PHP CLI 超慢解决办法在 ~/.profile 里修改PATH, 增加下面的二行:
居然有5秒的卡住, 比较恐怖. 即使是禁用传说的 imap: time php -n -d extension=imap.so -v 扩展也没有用. 依旧占了5秒时间.
解决办法: 在 /etc/hosts 文件里添加 本地主机名, 看起来大概这样:
再测试一下 PHP CLI 模式的时间, 飞快飞快.
关于phpcli-d的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。