当前位置:首页 » 编程语言 » php程序的调用

php程序的调用

发布时间: 2025-06-18 01:31:47

1. php写完代码怎么执行(php编写程序)

怎么用php命令执行php代码

PHP执行命令的四种方法

方法一:使用exec函数执行系统外部命令

原型:functionexec(string$command,array[optional]$output,int[optional]

$return_value)

?

??exec("dir",$outPut);

??

print_r($outPut);

?

说明:列出和PHP执行文件同级目录下的所有目录及文件信息。

知识点:exec执行系统外部命令时不会输出结果,而是返回结果的最后一行,如果你想得到结果你可以使用第二个参数,让其输出到指定的数组,此数组一个记录代表输出的一行,即如果输出结果有20行,则这个数组就有20条记录,所以如果你需要反复输出调用不同系统外部命令的结果,你最好在输出每一条系统外部命令结果时清空这个数组,以防混乱。第三个参数用来取得命令执行的状态码,通常执行成功都是返回0。

方法二:使用system函数执行系统外部命令

原型:functionsystem(string$command,int[optional]$return_value)

1

2

3

?

??system("dir");

?

知识点:system和exec的区别在于system在执行系统外部命令时,直接将结果输出到游览器,如果执行命令成功则返回true,否则返回false。第二个参数与exec第三个参数含义一样。

方法三:使用函数passthru执行系统外部命令

原型:functionpassthru(string$command,int[optional]$return_value)

知识点:passthru与system的区别,passthru直接将结果输出到游览器,不返回任何值,且其可以输出二进制,比如图像数据。

方法四:反撇号`(和~在同一个键)执行系统外部命令

1

2

3

?

??echo`dir`;

?

知识点:在使用这种方法执行系统外部命令时,你要确保shell_exec函数可用,否则是无法使用这种反撇号执行系统外部命令的。

怎样在本地运行PHP

1、首先需要在电脑上安装PHPstudy软件和notepad这两个代码编辑软件(如果找到可以代替的就用你那代替的),如图所示红色箭头所示:

2、接下来直接运行PHPstudy,点击红色箭头所指的启动,当左侧两个英文单词lightd和mysql后面显示两个绿点时,说明PHPstudy已经在电脑上成功运行。

3、选择右侧居中的?“php版本”将进入下图界面,服务器选Apache即可。

4、选择好之后,在弹出的phpstudy设置中,选择端口常规设置。

5、在“端口检测”处,查看服务器的端口是否被占用。网站编写好以后就放置在网站目录下。

6、服务器搭设完成。新建一个文档另存在上面的目录里,文件名保存为index.php(自由发挥)。然后写一个你认为最简单的网页进行保存。

7、在浏览器网址处输入127.0.0.1,即可看到刚编写的网站主页,即php代码运行的效果。

下载的php源码怎么运行?

要想运行PHP代码,你得现有一个服务器环境。

1.在网上自己下载一个xampp,然后安装。

2.把你的代码放到xampphtdocs里面。

3.打开浏览器,输入127.0.0.1/文件名.php

比如,你得文件有个叫index.php的,直接输入127.0.0.1/index.php访问,就开始执行了。

4.建议在htdocs里面添加文件夹,防止混乱。

5.也可以将默认的htdocs目录更改到其他位置,这个网上介绍很多。

php如何执行代码?

代码中可以写个时间限制,仅限某个短时间内允许访问。或者带个参数浏览器访问,不要对外暴露参数。

phpdev怎么运行刚写好的代码?

代码编写好以后,要先“编译”,通过完成后,再点击“运行”就可以了。

php代码怎么运行的?

html跟PHP分离的话,就涉及MVC架构,你说的html后缀是伪静态,目前不少PHP框架能做到你说的,比如说TP框架

2. PHP如何调用sqlite数据库

可以使用PDO抽象数据层技术:
$conn=new PDO("sqlite:D:/database/bagecms.db");
$loginstr="select * from UserTab where UserId=? and UserPwd=?";
$sth=$conn->prepare($loginstr);
$sth->bindValue(1,$userid,PDO::PARAM_STR);
$sth->bindValue(2,$userpwd,PDO::PARAM_STR);
$sth->execute();
$res=$sth->fetch();
if($res && ($_POST["chk"]==$_SESSION["srcnum"]))
{
echo("<div>欢迎您,".$res["UserId"]."</div>");
echo("<a href='exam.php'>点击进入主页</a>");
$_SESSION["ut"]=$res["UserId"];
}else
{
echo("<div>登录失败!</div><div>用户名、密码或者 验证码不正确</div>");

3. 怎样用PHP脚本调用安装在Windows中的*.exe程序

在尝试调用之前,至少你需要了解一定的知识才可以。

  1. 你的PHP环境是在Linux服务器还是Windows服务器上?如果是Linux服务器,那么是不支持exe程序运行的。

  2. 你的程序需要放在php文件能访问的目录中。当然,你必须能够访问PHP服务器才可以。如果只是客户端,那是没用的。PHP不能访问客户端的程序。

  3. system或者exec都可以执行文件。不过没有尝试Windows下访问某个特定的程序。

  4. 下面是一个例子。使用exec执行‘whoami’程序。

  5. <?php
    // outputs the username that owns the running php/httpd
    process
    // (on a system with the "whoami" executable in the
    path)
    echo exec('whoami');
    ?>

4. 菜鸟求助:PHP中调用系统命令为何有些命令总是失败

PHP执行系统命令(简介及方法)
在PHP中调用外部命令,可以用如下三种方法来实现:
方法一:用PHP提供的专门函数(四个):
PHP提供4个专门的执行外部命令的函数:exec(), system(), passthru(), shell_exec()
1)exec()
原型: string exec ( string $command [, array &$output [, int &$return_var ]] )
说明: exec执行系统外部命令时不会输出结果,而是返回结果的最后一行。如果想得到结果,可以使用第二个参数,让其输出到指定的数组。此数组一个记录代表输出的一行。即如果输出结果有20行,则这个数组就有20条记录,所以如果需要反复输出调用不同系统外部命令的结果,最好在输出每一条系统外部命令结果时清空这个数组unset($output),以防混乱。第三个参数用来取得命令执行的状态码,通常执行成功都是返回0。
<?php
exec("dir",$output);
print_r($output);
?>
2)system()
原型: string system ( string $command [, int &$return_var ] )
说明: system和睁和exec的区别在于,system在执行系统外部命令时,直接将结果输出到游览器,如果执行命令成功则返回true,否则返回false。第二个参数与exec第三个参数含义一样。
<?php
system("pwd");
?>
3)passthru()
原型: void passthru ( string $command [, int &$return_var ] )
说明: passthru与system的区别,passthru直接将结果输出到游览器,不返回任何值,且其可以输出二进制,比如图像数据。第二个参数可选,是状态码。
<?php
header("Content-type:image/gif");
passthru("/usr/bin/ppm2tiff /usr/share/tk8.4/demos/images/teapot.ppm");
?>
4)shell_exec()
原型: string shell_exec ( string $cmd )
说明: 直接执行命令$cmd
<?php
$output = shell_exec('ls -lart');
echo "<pre>$output</pre>";
?>
方法二:反撇号
原型: 反撇号`(和~在同一个键)执行系统外部命令
说明: 在使用这种方法执行系统外部命令时,要确保shell_exec函数可用,否则是无法使用这种反撇号执行系统外部命令的。
<?php
echo `dir`;
?>
方法三:用popen()函数打开进程
原型: resource popen ( string $command , string $mode )
说明: 能够和命令进行交互。之前介绍的方法只能简单地执行命令,却不能与命令交互。有时须向命令输入一些东西,如在增加系统用户时,要调用su来把当前用户换到root用户,而su命令必须要在命令行上输入root的密码。这种情况下,用之前提到的方法显然是不行的。
popen( )函数打开一个进程管道来执行给定的命令,返迅粗回一个文件句柄,可以对它读和写。返回值和fopen()函数一样,返回一个文件指针。除非使用的是单一的模式打开(读or写),否则必须使用pclose()函数关闭。该指针可以被fgets(),fgetss(),fwrite()调用。出错时,返回FALSE。
<?php
error_reporting(E_ALL);
/* Add redirection so we can get stderr. */
$handle = popen('/path/to/executable 2>&1', 'r');
echo "'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo $read;
pclose($handle);
?>
要考虑两个问题悉昌盯:安全性和超时
1)安全性
由于PHP基本是用于WEB程序开发的,所以安全性成了人们考虑的一个重要方面 。于是PHP的设计者们给PHP加了一个门:安全模式。如果运行在安全模式下,那么PHP脚本中将受 到如下四个方面的限制:
执行外部命令
在打开文件时有些限制
连接MySQL数据库
基于HTTP的认证
在安全模式下,只有在特定目录中的外部程序才可以被执行,对其它程序的调用将被拒绝。这个目录可以在PhP.ini 文件中用safe_mode_exec_dir指令,或在编译PHP是加上--with-exec-dir选项来指定。
当你使用这些函数来执行系统命令时,可以使用escapeshellcmd()和escapeshellarg()函数阻止用户恶意在系统上执行命令,escapeshellcmd()针对的是执行的系统命令,而escapeshellarg()针对的是执行系统命令的参数。这两个参数有点类似addslashes()的功能。
2)超时
当执行命令的返回结果非常庞大时,可以需要考虑将返回结果输出至其他文件,再另行读取文件,这样可以显着提高程序执行的效率。
如果要执行的命令要花费很长的时间,那么应该把这个命令放到系统的后台去运行。但在默认情况下,象system()等函数要等到这个命令运行完才返回(实际上是在等命令的输出结果),这肯定会引起PHP脚本的超时。解决的办法是把命令的输出重定向到另外一个文件或流中,如:
<?php
system("/usr/local/bin/order_proc > /tmp/abc ");
?>
但我调用的DOS命令需要几分钟的时间,而且为了批处理不能简单的把结果写入文件了事,要顺序执行以下的程序
PHP设置了调用系统命令的时间限制,如果调用命令超时,虽然这个命令还是会被执行完,但PHP没有得到返回值,被终止了(最可恨的是,不显示任何错误)
修改php.ini并重启Apache以允许系统命令运行更长的时间
max_execution_time = 600
我的程序是后台运行的,逻辑OK就成了

热点内容
nginx断点上传 发布:2025-06-18 06:08:24 浏览:199
怎么缓存 发布:2025-06-18 06:03:32 浏览:623
android代码卸载应用 发布:2025-06-18 05:57:21 浏览:375
存储过程ifthen语句 发布:2025-06-18 05:56:02 浏览:38
androidstudio入门指南 发布:2025-06-18 05:50:46 浏览:742
华为存储应用场景 发布:2025-06-18 05:43:01 浏览:248
克鲁斯卡尔算法流程图 发布:2025-06-18 05:42:17 浏览:994
python读取指定行 发布:2025-06-18 05:40:49 浏览:425
linux开启apache 发布:2025-06-18 05:11:06 浏览:485
浏览器与服务器是什么架构 发布:2025-06-18 05:00:11 浏览:805