0

I have got string response is "<?php $a=array("10","20"); echo $a[0]+a[1]; ?>"

How to execute this string. I use PHP 7.0.

Please give any solution.

localheinz
  • 9,179
  • 2
  • 33
  • 44
Renuka s
  • 53
  • 1
  • 5

1 Answers1

7

As already stated you can use eval($string);. Beware that eval() evaluates a string as PHP code, so you need to be careful with the strings you allow to be passed!

If you take the string yourself from a predefined set of strings you created (using a swtich statement or something similar) it shouldn't be a problem.

If the string comes from the outside (user input or cURL requests or whatever) you shouldn't trust it and you should avoid using this method.

  • I have using eval('?>'.$string.' – Renuka s Jul 25 '17 at 07:36
  • @Renukas, I know it is tooooo late to comment smth here, but mb it will be helpful for someone else. Beware too, because $string could contain "", so in your example, you aren't avoiding executing php code – BedOmar Jul 31 '22 at 05:00