2015-11-21 3 views
1

Cette question est juste pour moi d'apprendre. Je peux facilement le résoudre en dehors de l'écho ... mais il DOIT y avoir un moyen d'effectuer un calcul de base ou un appel de fonction dans une déclaration d'écho ... non?exécuter le code PHP dans la chaîne

$CurrentMembershipYear = '2016'; 

echo '<h2>Two-Year Membership for '.$CurrentMembershipYear.' and '.intval($CurrentMembershipYear)+1.'</h2>'; 

Cela devrait être faisant écho à « adhésion de deux ans pour 2016 et 2017 » mais génère des erreurs de. Habituellement, je voudrais juste pré-calculer la deuxième valeur avant la déclaration d'écho et juste le passer comme une variable ... mais sûrement il ya un moyen de mettre ce calcul en ligne?

+3

Mettez quelques parenthèses autour d'elle. (Cherchez la priorité de l'opérateur pour plus d'informations) – Rizier123

+0

merci @ Rizier123 ... Je l'ai compris juste après avoir abandonné et posté ... mais oui ... Merci. – techtheatre

Répondre

1

peu importe ... le cerveau osseux endormi. Juste besoin d'parenthèse ... je n'avais essayé accolades curvy:

$CurrentMembershipYear = '2016'; 

echo '<h2>Two-Year Membership for '.$CurrentMembershipYear.' and '.(intval($CurrentMembershipYear)+1).'</h2>'; 
+1

note de côté, vous n'avez pas besoin intval –

+0

J'ai ajouté cela parce que mon année numérique est réellement stockée comme une chaîne pas un nombre ... donc je pensais que cela aurait pu être le problème au départ. Je vais lui donner un test sans l'intval et voir ce qui se passe. Merci. – techtheatre

+0

son php, son faiblement typé, donc des choses comme ça fonctionnent (ils ne le feraient pas dans d'autres langues) –

0

entre parenthèses doit résoudre

(intval($CurrentMembershipYear)+1) 
+0

* parenthèse devrait le résoudre * oui, si vous les placez bien. – Rizier123

+0

non, mauvais endroit –

+1

Je ne vous voyais pas déjà résolu, c'est corrigé! : P –