recherche

Maison  >  Questions et réponses  >  le corps du texte

Est-il possible d'utiliser GET et argv en même temps en php ?

J'ai vu le fichier php d'une application web écrit :

$act=$_GET['act'];
if ($act)
{
$act = $argv[1];
}

Vous avez plein de questions ? ? ?
Quelqu’un peut-il me dire comment utiliser cette méthode, je ne la trouve nulle part ? . .
Merci ! ! !

phpcn_u1582phpcn_u15822776 Il y a quelques jours523

répondre à tous(5)je répondrai

  • 阿神

    阿神2017-05-18 10:49:35

    Parfois, vous ne pouvez pas ou ne voulez pas installer php-cgi et vous n'avez pas la possibilité de modifier le fichier php pour définir $_GET aux paramètres transmis.php-cgi,您没有编辑php文件的选项可以将$_GET设置为传入的参数.

    $act=$_GET['act'];
    if ($act){
        $act = $argv[1];
    }
    

    您可以从您的php应用程序中的$argv数组访问您启动脚本的变量。第一个条目将是他们来自的脚本的名称

    php -r '$_GET["key"]="value"; require_once("script.php"); 

    这样可以避免更改您的php文件,并允许您使用plain php命令。如果你安装了php-cgi,一定要用这个

    -r表示在以下字符串中运行php代码。您手动设置$_GET值,然后引用要运行的文件。

    值得注意的是,您应该在正确的文件夹中运行此文件,通常但并不总是php文件所在的文件夹。Requires rrreee

    Vous pouvez accéder aux variables de votre script de démarrage depuis le tableau $argv de votre application php. La première entrée sera le nom du script dont ils proviennent #🎜🎜# rrreee #🎜🎜#Cela évite de modifier votre fichier php et vous permet d'utiliser la commande plain php. Si vous avez installé php-cgi, assurez-vous d'utiliser ceci #🎜🎜# #🎜🎜#-r signifie exécuter le code php dans la chaîne suivante. Vous définissez manuellement la valeur $_GET, puis référencez le fichier à exécuter. #🎜🎜# #🎜🎜#Il convient de noter que vous devez exécuter ce fichier dans le bon dossier, généralement mais pas toujours le dossier où se trouve le fichier php. L'instruction Requires utilisera l'emplacement de votre commande pour résoudre les URL relatives, et non l'emplacement du fichier#🎜🎜#

    répondre
    0
  • 黄舟

    黄舟2017-05-18 10:49:35

    $_GET, stocke généralement query stringkey=>valuetableaux. En principe, il est en lecture seule, mais l'affectation est également possible, mais ce n'est pas recommandé

    .

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-18 10:49:35

    Normalement, $_GET et $argv ne devraient pas apparaître ensemble. L'un est destiné à l'exécution Web et l'autre à l'exécution en ligne de commande. Mais après une recherche récente, il semble que get puisse être transmis via php-cgi. .

    répondre
    0
  • 世界只因有你

    世界只因有你2017-05-18 10:49:35

    $act=$_GET['act']; consiste à obtenir la chaîne xxxx après act=xxxx sur l'url. $act = $argv[1] obtient la deuxième valeur du paramètre dans la ligne de commande.

    La logique du code ici est d'obtenir d'abord les paramètres de l'URL, et si les paramètres ont des valeurs, puis de les réaffecter. Donc le dernier $act de ce code est la valeur de $argv[1]. Ce fichier php ne peut être appelé qu'à partir de la ligne de commande !

    répondre
    0
  • 仅有的幸福

    仅有的幸福2017-05-18 10:49:35

    Il est suggéré que l'affiche le modifie au lieu de les mélanger. Il est recommandé d'utiliser argv sur la ligne de commande, d'obtenir une demande de publication, etc. Il est préférable de les utiliser séparément.

    répondre
    0
  • Annulerrépondre