Maison développement back-end tutoriel php 变量的变量,PHP和你_PHP

变量的变量,PHP和你_PHP

Jun 01, 2016 pm 12:35 PM
echo index 变量 记录 ce

变量的变量PHP 和 你

在我最近做的一个项目中我发现了一个新的概念关于在PHP中使用变量的变量。在我的程序中我需要在一个页面同时更新多个记录在我经过相当长时间的痛苦思索之后脑海中偶然地闪现出了变量的变量variable variable这一概念所有的困惑就一扫而光了。

介绍

什么叫作变量的变量根据PHP手册变量的变量是指取得一个变量的值并把它作为另一个变量的变量名。这表述显得相当的直接容易和那些在一个句子中使用“变量”这个词弄混淆。给一个简单的例子你定义一个变量 --- x 等于 this --- 然后定义一个变量的变量意味着你把 x 的值作为新变量的名在这个例子中这个新变量的值是 is cake。用PHP来表示如下


$x = "this";
$$x = "is cake";

?>

这个符号$$是在PHP中对变量的变量的表示方法。现在我们可以用两种不同的方式来引用这两个变量 $x 和 $$x 了。


echo "$x ${$x}";

?>


echo "$x $this";

?>

上面两段程序都将输出 this is cake。注意echo语句中$$x被写成${$x}这是让PHP知道你要输出的是变量的变量而不是一个$字符与$x变量。

你是不是仍很迷惑也许吧你想要一些更深入更有用的例子下一节我将向你展示怎样用变量的变量在一个页面编辑多条记录的。


例子

假设你已有一个MySQL数据库保存了对一些感兴趣的站点的链接库中有一个表submissions字段如下

SubmissionID
PostedBy
Link
Description
Approved

现在你想显示在表中所有的已创建但没有被认可的链接这个编辑的页面应可以更正一些输入时的错误并用适当的单选按钮来为每一个记录设置是否允许(Approved)然后一次把更新后的记录都提交到表中。

首先当你从数据库出提取所有的记录并显示出来时你必须为每一个记录设置一个唯一的名字这将让我们在提交时可以循环地辩别出各个记录的值。代码如下


//初始化变量的记数器

$index = 0;
$index_count = 0;

echo "

n"
;
echo "n";
echo"".
"
n";


/*********
假定我们已从数据库中检索出记录到一个数组中 
$myrow = mysql_fetch_array().
下面的 do...while 循环根据名字为每一个$xstr变量分配了一个值并且连接了$index 的值到结尾,以0为开始。
这样,这个循环的第一次时,$SubmissionIDStr 的值就是 SubmissionID0 ,第二次就是 SubmissionID1 ,以此类推。
***********/


do{

$SubmissionIDStr = SubmissionID.$index;
$PostedByStr = PostedBy.$index;
$LinkStr = Link.$index;
$DescriptionStr = Description.$index;
$ApprovedStr = Aprroved.$index;


//这一段将在屏幕上显示值以每行一条记录。

printf("

n",
$SubmissionIDStr, $myrow["SubmissionID"], $PostedByStr, $myrow["PostedBy"], $LinkStr, $myrow["Link"],
$DescriptionStr, $myrow["Description"], $ApprovedStr, $ApprovedStr);


//每个循环记数器加1

$index++;
$index_count++;

}while($myrow = mysql_fetch_array($result));

// 创建一个索引记数器index_count来跟踪所有的记录数

echo"n";

echo"n";

?>

提交以后我们利用$index_count变量再一次循环遍历页面上所有的变量然后分配这些变量给另一些变量这就用到了变量的变量。


//这个循环遍历所有页面上显示的记录

for($index = 0; $index = $counter; $index++) {


/*****
这部分用我们在前面创建的名字设置了新的变量
从0开始,直到$index_count
*****/


$varSubmissionID = 'SubmissionID'.$index;
$varPostedBy = 'PostedBy'.$index;
$varLink = 'Link'.$index;
$varDescription = 'Description'.$index;
$varApproved = 'Approved'.$index;


/******
这是变量的变量部分,把每个值分配给每个新变量的名。
例如,第一次循环时,分配给记录 SubmissionID0 是从前面得来的值,我们用变量的变量来了取到它。
*******/


$SubmissionIDvalue = $$varSubmissionID;
$PostedByvalue = $$varPostedBy;
$Linkvalue = $$varLink;
$Descriptionvalue = $$varDescription;
$Approvedvalue = $$varApproved;


//更新数据库

$sql = "UPDATE submissions SET PostedBy='$PostedByvalue',Link='$Linkvalue',".
"Description='$Descriptionvalue' WHERE SubmissionID=$SubmissionIDvalue'";
$result = mysql_query($sql);


//如果本记录被设置为approved,更新相应的字段 Approved。

if ($Approvedvalue == '-1') {
$sql = "UPDATE submissions SET Approved='-1' WHERE SubmissionID=$SubmissionIDvalue";
$result = mysql_query($sql);
}

}

?>

我希望这有助于你明白这个变量的变量的基本用法并且在你将来的工作中使用它们提供一些思路。变量的变量这一概念最初也是让我头痛的东西但是一旦你知道了它们工作的基本原理时它们就变成了一块美味的比萨饼。如果有什么问题请让我知道吧。
Posted By LinkDescription Approved
YesNo

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Où trouver la courte de la grue à atomide atomique
1 Il y a quelques semaines By DDD

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quel fichier est index.html ? Quel fichier est index.html ? Feb 19, 2024 pm 01:36 PM

index.html représente le fichier de la page d'accueil de la page Web et est la page par défaut du site Web. Lorsqu'un utilisateur visite un site Web, la page index.html est généralement chargée en premier. HTML (HypertextMarkupLanguage) est un langage de balisage utilisé pour créer des pages Web, et index.html est également un fichier HTML. Il contient la structure et le contenu d'une page Web, ainsi que les balises et les éléments utilisés pour le formatage et la mise en page. Voici un exemple de code index.html : &lt

Où puis-je consulter les enregistrements des articles que j'ai achetés sur Pinduoduo ? Comment consulter les enregistrements des produits achetés ? Où puis-je consulter les enregistrements des articles que j'ai achetés sur Pinduoduo ? Comment consulter les enregistrements des produits achetés ? Mar 12, 2024 pm 07:20 PM

Le logiciel Pinduoduo fournit de nombreux bons produits, vous pouvez les acheter à tout moment et n'importe où, et la qualité de chaque produit est strictement contrôlée, chaque produit est authentique et il existe de nombreuses remises d'achat préférentielles, permettant à chacun d'acheter en ligne. Entrez votre numéro de téléphone mobile pour vous connecter en ligne, ajoutez plusieurs adresses de livraison et informations de contact en ligne et vérifiez les dernières tendances logistiques à tout moment. Les sections de produits de différentes catégories sont ouvertes, recherchez et balayez de haut en bas pour acheter et passer des commandes, et. Faites l'expérience de la commodité sans quitter la maison. Avec le service d'achat en ligne, vous pouvez également consulter tous les enregistrements d'achat, y compris les produits que vous avez achetés, et recevoir gratuitement des dizaines d'enveloppes rouges et de coupons d'achat. L'éditeur a désormais fourni aux utilisateurs de Pinduoduo un aperçu détaillé en ligne. moyen d'afficher les enregistrements de produits achetés. 1. Ouvrez votre téléphone et cliquez sur l'icône Pinduoduo.

Un guide d'utilisation des variables d'environnement Windows 11 et 10 pour le profilage Un guide d'utilisation des variables d'environnement Windows 11 et 10 pour le profilage Nov 01, 2023 pm 08:13 PM

Les variables d'environnement sont le chemin d'accès à l'emplacement (ou à l'environnement) où les applications et les programmes s'exécutent. Ils peuvent être créés, édités, gérés ou supprimés par l'utilisateur et s'avèrent utiles lors de la gestion du comportement de certains processus. Voici comment créer un fichier de configuration pour gérer plusieurs variables simultanément sans avoir à les modifier individuellement sous Windows. Comment utiliser les profils dans les variables d'environnement Windows 11 et 10 Sous Windows, il existe deux ensembles de variables d'environnement : les variables utilisateur (s'appliquent à l'utilisateur actuel) et les variables système (s'appliquent globalement). Cependant, en utilisant un outil comme PowerToys, vous pouvez créer un fichier de configuration distinct pour ajouter des variables nouvelles et existantes et les gérer toutes en même temps. Voici comment procéder : Étape 1 : Installer PowerToysPowerTo

Comment afficher et gérer l'historique des commandes Linux Comment afficher et gérer l'historique des commandes Linux Aug 01, 2023 pm 09:17 PM

Comment afficher l'historique des commandes sous Linux Sous Linux, nous utilisons la commande history pour afficher la liste de toutes les commandes précédemment exécutées. Sa syntaxe est très simple : history Certaines options de couplage avec la commande history incluent : Description de l'option -c efface l'historique des commandes pour la session en cours -w écrit l'historique des commandes dans un fichier -r recharge l'historique des commandes à partir du fichier historique - n Limiter le nombre de sorties de commandes récentes Exécutez simplement la commande history pour voir une liste de toutes les commandes précédemment exécutées dans un terminal Linux : En plus de visualiser l'historique des commandes, vous pouvez également gérer l'historique des commandes et effectuer des modifications sur les commandes précédemment exécutées, inverser rechercher l'historique des commandes ou même supprimer complètement l'historique

Mode strict pour les variables en PHP7 : comment réduire les bugs potentiels ? Mode strict pour les variables en PHP7 : comment réduire les bugs potentiels ? Oct 19, 2023 am 10:01 AM

Le mode strict a été introduit dans PHP7, ce qui peut aider les développeurs à réduire les erreurs potentielles. Cet article expliquera ce qu'est le mode strict et comment utiliser le mode strict en PHP7 pour réduire les erreurs. Parallèlement, l'application du mode strict sera démontrée à travers des exemples de code. 1. Qu’est-ce que le mode strict ? Le mode strict est une fonctionnalité de PHP7 qui peut aider les développeurs à écrire du code plus standardisé et à réduire certaines erreurs courantes. En mode strict, il y aura des restrictions et une détection strictes sur la déclaration des variables, la vérification du type, l'appel de fonction, etc. Passer

Comment consulter l'historique des appels sur iPhone et l'exporter ? Comment consulter l'historique des appels sur iPhone et l'exporter ? Jul 05, 2023 pm 12:54 PM

L'enregistrement des appels sur iPhone est souvent sous-estimé et constitue l'une des fonctionnalités les plus critiques de l'iPhone. Grâce à sa simplicité, cette fonctionnalité est d'une importance vitale et peut fournir des informations importantes sur les appels passés ou reçus sur l'appareil. Que ce soit à des fins professionnelles ou dans le cadre d'une procédure judiciaire, la possibilité d'accéder aux enregistrements d'appels peut s'avérer inestimable. En termes simples, l'historique des appels fait référence aux entrées créées sur votre iPhone chaque fois que vous passez ou recevez un appel. Ces journaux contiennent des informations clés, notamment le nom du contact (ou son numéro s'il n'est pas enregistré en tant que contact), l'horodatage, la durée et l'état de l'appel (composé, manqué ou sans réponse). Ils constituent un enregistrement concis de votre historique de communication. L'historique des appels comprend des bandes d'historique des appels stockées sur votre iPhone

Comment afficher l'historique de votre journal de médicaments dans l'application Santé sur iPhone Comment afficher l'historique de votre journal de médicaments dans l'application Santé sur iPhone Nov 29, 2023 pm 08:46 PM

iPhone vous permet d’ajouter des médicaments dans l’application Santé pour suivre et gérer les médicaments, vitamines et suppléments que vous prenez quotidiennement. Vous pouvez ensuite enregistrer les médicaments que vous avez pris ou ignorés lorsque vous recevez une notification sur votre appareil. Après avoir enregistré vos médicaments, vous pouvez voir à quelle fréquence vous les avez pris ou sautés pour vous aider à suivre votre état de santé. Dans cet article, nous vous guiderons pour afficher l'historique des journaux de médicaments sélectionnés dans l'application Santé sur iPhone. Un petit guide sur la façon d'afficher l'historique de votre journal de médicaments dans l'application Santé : Accédez à l'application Santé > Parcourir > Médicaments > Médicaments > Sélectionner un médicament > Options

Que sont les variables d'instance en Java Que sont les variables d'instance en Java Feb 19, 2024 pm 07:55 PM

Les variables d'instance en Java font référence aux variables définies dans la classe, et non dans la méthode ou le constructeur. Les variables d'instance sont également appelées variables membres. Chaque instance d'une classe possède sa propre copie de la variable d'instance. Les variables d'instance sont initialisées lors de la création de l'objet et leur état est enregistré et conservé tout au long de la durée de vie de l'objet. Les définitions de variables d'instance sont généralement placées en haut de la classe et peuvent être déclarées avec n'importe quel modificateur d'accès, qui peut être public, privé, protégé ou le modificateur d'accès par défaut. Cela dépend de ce que nous voulons que ce soit

See all articles