![]() |
![]() ![]() |
![]() |
tudsy |
![]()
Post
#1
|
Advanced Member ![]() ![]() ![]() ![]() Group: Members Posts: 246 Joined: 30-September 14 Member No.: 21,611 ![]() |
Hi
I am new to the eval function but I was wondering can anyone find anything wrong with this code: foreach ($this->subclient_names as $subclient_name) { eval("\$api_instance = \"new /home/ecovibdc/vendor/klaviyo/sdk/API/ ${subclient_name}/Api(new /home/ecovibdc/vendor/guzzlehttp/guzzle/src/Client.php, $this->config\";"); $this->$subclient_name = new Subclient( $api_instance, $wait_seconds = 3, $num_retries = 3, ); Any help would be appreciated. Thanks Adrian. |
tudsy |
![]()
Post
#2
|
Advanced Member ![]() ![]() ![]() ![]() Group: Members Posts: 246 Joined: 30-September 14 Member No.: 21,611 ![]() |
Hi I am new to the eval function but I was wondering can anyone find anything wrong with this code: foreach ($this->subclient_names as $subclient_name) { eval("\$api_instance = \"new /home/ecovibdc/vendor/klaviyo/sdk/API/ ${subclient_name}/Api(new /home/ecovibdc/vendor/guzzlehttp/guzzle/src/Client.php, $this->config\";"); $this->$subclient_name = new Subclient( $api_instance, $wait_seconds = 3, $num_retries = 3, ); Any help would be appreciated. Thanks Adrian. Problem was a comma in the wrong place. |
Brian Chandler |
![]()
Post
#3
|
Jocular coder ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Group: Members Posts: 2,460 Joined: 31-August 06 Member No.: 43 ![]() |
QUOTE I am new to the eval function but I was wondering can anyone find anything wrong with this code: eval("\$api_instance = \"new /home/ecovibdc/vendor/klaviyo/sdk/API/ ${subclient_name}/Api(new /home/ecovibdc/vendor/guzzlehttp/guzzle/src/Client.php, $this->config\";"); What is the purpose of eval($parameter)? It runs the php code in the string $parameter, so normally the point is that this string came from a database, or (!!BIG ALERT!!) a string that a user entered. If the string is simply a bit of PHP code, then the above is the same as writing: [code] $api_instance = "new /home/ecovibdc/vendor/klaviyo/sdk/API/ ${subclient_name}/Api(new /home/ecovibdc/vendor/guzzlehttp/guzzle/src/Client.php, $this->config"; [code] So why are you writing the convoluted version? |
![]() ![]() |
![]() |
Lo-Fi Version | Time is now: 13th June 2024 - 05:04 PM |