Best Atoum code snippet using extension.__toString
Import1C.php
Source:Import1C.php
...33 // Categories34 $exist_categories = $this->model_extension_module_Import1C->getAllCategories();35 $categories = array();36 foreach ($xml->ÐлаÑÑиÑикаÑоÑ->ÐÑÑппÑ->children() as $category) {37 $category_id = $category->Ðд->__toString();38 $categories[$category_id]['id'] = $category_id;39 $categories[$category_id]['name'] = $this->clear($category->Ðаименование->__toString());40 $categories[$category_id]['keyword'] = $this->translit($categories[$category_id]['name']);41 $categories[$category_id]['parent_id'] = '';42 $subcategories = $this->getAllCategories($category->ÐÑÑппÑ, $category_id);43 }44 $categories = array_merge($categories, $subcategories);45 foreach ($categories as $category_data) {46 if (array_key_exists($category_data['id'], $exist_categories)) {47 $this->model_extension_module_Import1C->updateCategory($category_data, $exist_categories[$category_data['id']]);48 } else {49 $exist_categories[$category_data['id']] = $this->model_extension_module_Import1C->addCategory($category_data);50 }51 }52 // var_dump($categories);53 // Attributes 54 $dir = $this->request->server['DOCUMENT_ROOT'] . $this->dir . 'properties' . DIRECTORY_SEPARATOR;55 $files = scandir($dir);56 $catalog = '';57 // Ðак Ð±Ñ Ð½Ðµ назÑвалаÑÑ Ð¿Ð°Ð¿ÐºÐ° в webdata - полÑÑаем пÑÑÑ58 foreach ($files as $file) {59 if (!is_dir($dir . $file)) {60 $catalog = $dir . $file;61 }62 }63 $xml = simplexml_load_file($catalog);64 $attributes = $option_values = $manufacturers = array();65 $i = 0;66 foreach ($xml->ÐлаÑÑиÑикаÑоÑ->СвойÑÑва->children() as $attribute) {67 $property_id = trim($attribute->Ðд->__toString());68 switch ($property_id) {69 case '9f8cae83-92f3-11e7-89f1-14dae9e311d7':70 case 'ba28c6ce-946a-11e7-89f1-14dae9e311d7':71 $this->color_property_id = $attribute->Ðд->__toString();72 $j = 0;73 $colors['id'] = $attribute->Ðд->__toString();74 $colors['name'] = $attribute->Ðаименование->__toString();75 if (isset($attribute->ÐаÑианÑÑÐнаÑений)) {76 foreach ($attribute->ÐаÑианÑÑÐнаÑений->children() as $value) {77 if ($value->ÐнаÑение->__toString() && $value->ÐнаÑение->__toString() != '') {78 $colors['option_values'][$j]['id'] = $value->ÐдÐнаÑениÑ->__toString();79 $colors['option_values'][$j]['name'] = $this->clear($value->ÐнаÑение->__toString());80 $j++;81 }82 }83 }84 break;85 case '9f8cae86-92f3-11e7-89f1-14dae9e311d7':86 $this->size_property_id = $attribute->Ðд->__toString();87 $j = 0;88 $sizes['id'] = $attribute->Ðд->__toString();89 $sizes['name'] = $attribute->Ðаименование->__toString();90 foreach ($attribute->ÐаÑианÑÑÐнаÑений->children() as $value) {91 if ($value->ÐнаÑение->__toString() && $value->ÐнаÑение->__toString() != '') {92 $sizes['option_values'][$j]['id'] = $value->ÐдÐнаÑениÑ->__toString();93 $sizes['option_values'][$j]['name'] = $this->clear($value->ÐнаÑение->__toString());94 $j++;95 }96 }97 break;98 case '7ed585c2-fa78-11e7-852d-38d547aa20ca':99 $group[$i] = $value->ÐдÐнаÑениÑ->__toString();100 $group[$i] = $this->clear($value->ÐнаÑение->__toString());101 break;102 default:103 $attributes[$i]['id'] = $attribute->Ðд->__toString();104 $attributes[$i]['name'] = $attribute->Ðаименование->__toString();105 if (trim($attribute->ТипÐнаÑений->__toString()) == 'СпÑавоÑник') {106 if (isset($attribute->ÐаÑианÑÑÐнаÑений)) {107 $j = 0;108 foreach ($attribute->ÐаÑианÑÑÐнаÑений->children() as $value) {109 if ($value->ÐнаÑение->__toString() && $value->ÐнаÑение->__toString() != '') {110 $attributes[$i]['attribute_presets'][$j]['id'] = $value->ÐдÐнаÑениÑ->__toString();111 $attributes[$i]['attribute_presets'][$j]['text'] = $this->clear($value->ÐнаÑение->__toString());112 $j++;113 }114 }115 }116 }117 }118 $i++;119 }120 $exist_attributes = $this->model_extension_module_Import1C->getAllAttributes();121 foreach ($attributes as $attribute_data) {122 if (array_key_exists($attribute_data['id'], $exist_attributes)) {123 $attribute_id = $exist_attributes[$attribute_data['id']];124 $this->model_extension_module_Import1C->updateAttribute($attribute_data, $attribute_id);125 if (isset($attribute_data['attribute_presets'])) {126 $this->addPresets($attribute_data['attribute_presets'], $attribute_id);127 }128 } else {129 $exist_attributes[$attribute_data['id']] = $this->model_extension_module_Import1C->addAttribute($attribute_data);130 if (isset($attribute_data['attribute_presets'])) {131 $this->addPresets($attribute_data['attribute_presets'], $exist_attributes[$attribute_data['id']]);132 }133 }134 }135 // var_dump($attributes);136 // Colors137 $color_option_id = $this->model_extension_module_Import1C->getColorOptionId();138 $exist_colors = $this->model_extension_module_Import1C->getOptionValues($color_option_id);139 foreach ($colors['option_values'] as $color_value_data) {140 if (array_key_exists($color_value_data['id'], $exist_colors)) {141 $option_value_id = $exist_colors[$color_value_data['id']];142 $this->model_extension_module_Import1C->updateOptionValue($color_value_data, $option_value_id);143 } else {144 $exist_colors[$color_value_data['id']] = $this->model_extension_module_Import1C->addOptionValue($color_value_data, $color_option_id);145 }146 }147 // Sizes148 $size_option_id = $this->model_extension_module_Import1C->getSizeOptionId();149 $exist_sizes = $this->model_extension_module_Import1C->getOptionValues($size_option_id);150 foreach ($sizes['option_values'] as $size_value_data) {151 if (array_key_exists($size_value_data['id'], $exist_sizes)) {152 $option_value_id = $exist_sizes[$size_value_data['id']];153 $this->model_extension_module_Import1C->updateOptionValue($size_value_data, $option_value_id);154 } else {155 $exist_sizes[$size_value_data['id']] = $this->model_extension_module_Import1C->addOptionValue($size_value_data, $size_option_id);156 }157 }158 //var_dump($colors);159 //var_dump($sizes); 160 // Products161 $dir = $this->request->server['DOCUMENT_ROOT'] . $this->dir . 'goods' . DIRECTORY_SEPARATOR;162 $files = scandir($dir);163 $catalog = '';164 // Ðак Ð±Ñ Ð½Ðµ назÑвалаÑÑ Ð¿Ð°Ð¿ÐºÐ° в webdata - полÑÑаем пÑÑÑ165 foreach ($files as $file) {166 if (!is_dir($dir . $file)) {167 $catalog = $dir . $file;168 }169 }170 $xml = simplexml_load_file($catalog);171 $exist_products = $this->model_extension_module_Import1C->getAllProducts();172 $products = array();173 foreach ($xml->ÐаÑалог->ТоваÑÑ->children() as $product) {174 if ($product->ÐомеÑкаУдалениÑ->__toString() != 'true') {175 $product_id = $product->Ðд->__toString();176 $products[$product_id]['id'] = $product_id;177 $products[$product_id]['price'] = 0;178 $products[$product_id]['quantity'] = 0;179 $products[$product_id]['status'] = ($product->ÐомеÑкаУдалениÑ->__toString() === 'true' ? false : true);180 $products[$product_id]['model'] = $product->ÐÑÑикÑл->__toString();181 $products[$product_id]['sku'] = $product->ШÑÑиÑ
код->__toString();182 $products[$product_id]['name'] = $this->clear($product->Ðаименование->__toString());183 $products[$product_id]['keyword'] = $this->translit($products[$product_id]['name']);184 $products[$product_id]['description'] = $this->clear($product->ÐпиÑание->__toString());185 $products[$product_id]['product_category'] = array();186 foreach ($product->ÐÑÑппÑ->children() as $id) {187 $products[$product_id]['product_category'][] = $exist_categories[trim($id->__toString())];188 }189 $products[$product_id]['product_color_image'] = false;190 foreach ($product->ÐнаÑениÑРеквизиÑов as $props) {191 $value = $props->ÐнаÑениеРеквизиÑа->ÐнаÑение->__toString();192 $pieces = explode("#", $value);193 if (isset($pieces[1]) && $pieces[1] == 'ÐаÑÑинкаЦвеÑа') {194 $products[$product_id]['product_color_image'] = str_replace('/public_html/image/', '', $this->clear($pieces[0]));195 }196 }197 $products[$product_id]['product_image'] = array();198 foreach ($product->ÐаÑÑинка as $image) {199 $thumb = str_replace('/public_html/image/', '', $this->clear($image->__toString()));200 if ($products[$product_id]['product_color_image'] == false || $products[$product_id]['product_color_image'] != $thumb) {201 $products[$product_id]['product_image'][] = $thumb;202 }203 }204 if (count($products[$product_id]['product_image'])) {205 $products[$product_id]['status'] = 1; // ÐÑли еÑÑÑ ÑоÑо206 } else {207 $products[$product_id]['status'] = 0; // ÐÑли Ð½ÐµÑ ÑоÑо208 }209 $i = 0;210 foreach ($product->ÐнаÑениÑСвойÑÑв->children() as $attribute) {211 $property_id = trim($attribute->Ðд->__toString());212 $property_value = trim($attribute->ÐнаÑение->__toString());213 if (isset($exist_attributes[$property_id]) && $property_value) {214 if (isset($this->exists_attribute_presets[$property_value])) {215 $products[$product_id]['product_attribute'][$i]['attribute_id'] = $exist_attributes[$property_id];216 $products[$product_id]['product_attribute'][$i]['preset_id'] = $this->exists_attribute_presets[$property_value];217 } else {218 $products[$product_id]['product_attribute'][$i]['attribute_id'] = $exist_attributes[$property_id];219 $products[$product_id]['product_attribute'][$i]['text'] = $this->clear($attribute->ÐнаÑение->__toString());220 }221 } else {222 if ($property_id == '9f8cae83-92f3-11e7-89f1-14dae9e311d7' || $property_id == 'ba28c6ce-946a-11e7-89f1-14dae9e311d7') {223 if (isset($exist_colors[$property_value])) {224 $products[$product_id]['product_color_option_value'] = $exist_colors[$property_value];225 }226 }227 }228 $i++;229 }230 }231 }232 //var_dump($exist_colors);233 //var_dump($exist_sizes);234 $i = 0;235 foreach ($xml->ÐакеÑÐÑедложений->ÐÑедложениÑ->children() as $offer) {236 $option_status = ($offer->ÐомеÑкаУдалениÑ->__toString() === 'true' ? false : true);237 if ($option_status) {238 $product_id = current(explode('#', $offer->Ðд->__toString()));239 if (isset($offer->ÐнаÑениÑСвойÑÑв)) {240 foreach ($offer->ÐнаÑениÑСвойÑÑв->children() as $option) {241 if (!isset($exist_sizes[$option->ÐнаÑение->__toString()])) {242 //var_dump($offer->Ðд->__toString());243 }244 $products[$product_id]['product_option'][$i]['product_option_value'][$size_option_id] = $exist_sizes[$option->ÐнаÑение->__toString()];245 }246 }247 if (isset($offer->ЦенÑ)) {248 foreach ($offer->ЦенÑ->children() as $price) {249 $products[$product_id]['product_option'][$i]['price'] = str_replace(',', '.', $price->ЦенаÐаÐдиниÑÑ->__toString());250 }251 } else {252 $products[$product_id]['product_option'][$i]['price'] = 0;253 }254 $sku = explode('#', $offer->Ðд->__toString());255 $products[$product_id]['product_option'][$i]['1C_product_id'] = $sku[0];256 $products[$product_id]['product_option'][$i]['sku'] = $offer->Ðд->__toString();257 $products[$product_id]['product_option'][$i]['model'] = $products[$product_id] ['model'];258 $products[$product_id]['product_option'][$i]['product_option_value'][$color_option_id] = $products[$product_id] ['product_color_option_value'];259 $products[$product_id]['product_option'][$i]['quantity'] = abs((int)$offer->ÐÑÑаÑки->ÐÑÑаÑок->ÐолиÑеÑÑво->__toString());260 $products[$product_id]['product_option'][$i]['status'] = $option_status;261 $products[$product_id]['price'] = ($products[$product_id]['price'] < $products[$product_id]['product_option'][$i]['price'] ? $products[$product_id]['product_option'][$i]['price'] : $products[$product_id]['price']);262 $products[$product_id]['quantity'] = $products[$product_id]['quantity'] + $products[$product_id]['product_option'][$i]['quantity'];263 $i++;264 }265 }266 // Directory267 $dir = $this->request->server['DOCUMENT_ROOT'] . $this->dir;268 $files = scandir($dir);269 $catalog = '';270 // Ðак Ð±Ñ Ð½Ðµ назÑвалаÑÑ Ð¿Ð°Ð¿ÐºÐ° в webdata - полÑÑаем пÑÑÑ271 foreach ($files as $file) {272 if (!is_dir($dir . $file)) {273 $catalog = $dir . $file;274 }275 }276 $xml = simplexml_load_file($catalog);277 if (isset($xml->Скидки) && $xml->Скидки) {278 foreach ($xml->Скидки->children() as $sale) {279 $name = $sale->Ðаименование->__toString();280 $start_date = explode("T", $sale->ÐаÑаÐаÑала->__toString());281 $start_date = $start_date[0];282 $end_date = explode("T", $sale->ÐаÑаÐавеÑÑениÑ->__toString());283 $end_date = $end_date[0];284 $activity = $sale->ÐкÑивноÑÑÑ->__toString();;285 $priority = $sale->ÐÑиоÑиÑеÑ->__toString();;286 if (isset($sale->ÐÑедложениÑ) && $activity == 'true') {287 foreach ($sale->ÐÑедложениÑ->children() as $offer) {288 $id = $offer->__toString();289 $product_id = current(explode('#', $id));290 $products[$product_id]['special']['name'] = $name;291 $products[$product_id]['special']['priority'] = $priority;292 $products[$product_id]['special']['date_start'] = $start_date;293 $products[$product_id]['special']['date_end'] = ($end_date != '0001-01-01' ? $end_date : '');294 $products[$product_id]['special']['price'] = round($products[$product_id]['price'] - $products[$product_id]['price'] / 100 * (int)$sale->ÐнаÑение->__toString(), 0);295 $products[$product_id]['special']['sku'] = explode('#', $id);296 }297 }298 }299 }300 var_dump($products);301 foreach ($products as $product_data) {302 if (array_key_exists($product_data['id'], $exist_products)) {303 $this->model_extension_module_Import1C->updateProduct($product_data, $product_data['id'], $color_option_id);304 } else {305 $product_id = $this->model_extension_module_Import1C->addProduct($product_data);306 // if (isset($product_data['product_option_value_id'])) {307 // $this->model_extension_module_Import1C->addProductColorValue($product_data, $color_option_id, $product_id);308 // }309 $exist_products[$product_data['id']] = $product_data['model'];310 }311 }312 $exist_products = $this->model_extension_module_Import1C->getAllProducts();313 foreach ($exist_products as $id => $model) {314 $product_id = $this->model_extension_module_Import1C->getProduct($model, $id);315 $offers[$product_id] = $this->model_extension_module_Import1C->getProductsByModel($model, $product_id, $id);316 }317 //var_dump($offers);318 foreach ($offers as $product_id => $offer) {319 if (isset($offer['product_option'])) {320 $this->model_extension_module_Import1C->addProductOptions($product_id, $offer['product_option']);321 }322 if (isset($offer['product_related_option'])) {323 $this->model_extension_module_Import1C->addProductRelatedOptions($product_id, $offer['product_related_option']);324 }325 if (count($offer['product_option_image_settings'])) {326 foreach ($offer['product_option_image_settings'] as $product_option_image_settings) {327 $this->db->query("INSERT IGNORE INTO " . DB_PREFIX . "poip_option_settings 328 SET product_id = '" . (int)$product_id . "', 329 product_option_id = '" . (int)$product_option_image_settings['product_option_id'] . "',330 img_change = '0',331 img_use = '0',332 img_limit = '0',333 img_gal = '0',334 img_option = '0',335 img_category = '0',336 img_first = '0',337 img_from_option = '0',338 img_sort = '0',339 img_select = '0',340 img_cart = '0',341 img_radio_checkbox = '0',342 dependent_thumbnails = '0',343 img_hover = '0'");344 }345 }346 if ($offer['product_option_image']) {347 foreach ($offer['product_option_image'] as $product_option_image) {348 $this->db->query("INSERT INTO " . DB_PREFIX . "poip_option_image SET product_id = '" . (int)$product_id . "', product_option_id = '" . (int)$product_option_image['product_option_id'] . "', product_option_value_id = '" . (int)$product_option_image['product_option_value_id'] . "', image = '" . $product_option_image['image'] . "', sort_order = '0'");349 }350 }351 }352 /*353 $catalog = $dir.'offers.xml';354 $xml = simplexml_load_file($catalog);355 foreach ($xml->ÐакеÑÐÑедложений->ÐÑедложениÑ->children() as $offer) {356 $product_id = $offer->Ðд->__toString();357 foreach ($offer->ЦенÑ->children() as $price) {358 $products[$product_id]['price'] = str_replace(',', '.', $price->ЦенаÐаÐдиниÑÑ->__toString());359 }360 $products[$product_id]['quantity'] = str_replace(',00', '', $offer->ÐолиÑеÑÑво->__toString());361 }362 // ÐÑÑÑавлÑем вÑем ÑоваÑам в гÑаÑе кол-во 0 (Ð´Ð»Ñ Ð¾Ð¿Ñий)363 $this->model_module_Import1C->deactivateAllProducts();364 foreach ($products as $product_data) {365 if (in_array($product_data['model'], $exist_products)) {366 $this->model_module_Import1C->updateProduct($product_data, $product_data['model'], $color_option_id);367 } else {368 $product_id = $this->model_module_Import1C->addProduct($product_data);369 if (isset($product_data['product_option_value_id'])) {370 $this->model_module_Import1C->addProductColorValue($product_data, $color_option_id, $product_id);371 }372 $exist_products[$product_data['id']] = $product_data['model'];373 }374 }375 */376 }377 function clear($str)378 {379 return trim(preg_replace('/\s{2,}/', ' ', $str));380 }381 public function translit($str)382 {383 // replace always384 $str = str_replace(array(385 '`', '~', '!', '@', '#', '$', '%', '^', '*', '(', ')', '+', '=', '[', '{', ']', '}', '\\', '|', ';', ':', "'", '"', ',', '<', '.', '>', '/', '?'386 ), ' ', str_replace(array(387 '&'388 ), array(389 'and'390 ), htmlspecialchars_decode($str)));391 $unPretty = array(392 'Ã', 'à ', 'Ã', 'á', 'Ã', 'â', 'Ã', 'ã', 'Ã', 'ä', 'Ã
', 'Ã¥', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä
', 'Ç', 'Ç', 'Ǻ', 'Ç»', 'Î', 'α', 'Ñ', 'ạ', 'ả', 'ầ', 'ấ', 'áº', 'ẩ', 'ẫ', 'ằ', 'ắ', 'ặ', 'ẳ', 'ẵ', 'Ạ', 'Ả', 'Ầ', 'Ấ', 'Ậ', 'Ẩ', 'Ẫ', 'Ằ', 'Ắ', 'Ặ', 'Ẳ', 'Ẵ',393 'á¸', 'á¸', 'Ð', 'б',394 'Ä', 'Ä', 'Ã', 'ç', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Ч', 'Ñ', 'Χ', 'Ï',395 'á¸', 'á¸', 'Ä', 'Ä', 'á¸', 'á¸', 'Ä', 'Ä', 'Ã', 'ð', 'Ð', 'д', 'Î', 'δ',396 'DZ', 'Dz', 'dz', 'Ç', 'Ç
', 'Ç',397 'Ã', 'è', 'Ã', 'é', 'Ä', 'Ä', 'Ã', 'ê', 'Ã', 'ë', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä', 'Æ·', 'Ê', 'Ç®', 'ǯ', 'Ð', 'е', 'Ð', 'Ñ', 'Î', 'ε', 'ẹ', 'ẻ', 'ẽ', 'á»', 'ế', 'á»', 'á»', 'á»
', 'Ẹ', 'Ẻ', 'Ẽ', 'á»', 'Ế', 'á»', 'á»', 'á»',398 'á¸', 'á¸', 'Æ', 'Ф', 'Ñ', 'Φ', 'Ï',399 'ï¬', 'ï¬',400 'Ç´', 'ǵ', 'Ä¢', 'Ä£', 'Ǧ', 'ǧ', 'Ä', 'Ä', 'Ä', 'Ä', 'Ä ', 'Ä¡', 'Ǥ', 'Ç¥', 'Ð', 'г', 'Î', 'γ',401 'Ĥ', 'Ä¥', 'Ħ', 'ħ', 'Ð', 'ж', 'Ð¥', 'Ñ
',402 'Ã', 'ì', 'Ã', 'Ã', 'Ã', 'î', 'Ĩ', 'Ä©', 'Ã', 'ï', 'Ī', 'Ä«', 'Ĭ', 'Ä', 'Ä®', 'į', 'Ä°', 'ı', 'Ð', 'и', 'Î', 'η', 'Î', 'ι', 'á»', 'á»', 'á»', 'á»',403 'IJ', 'ij',404 'Ä´', 'ĵ',405 'Ḱ', 'ḱ', 'Ķ', 'Ä·', 'Ǩ', 'Ç©', 'Ð', 'к', 'Î', 'κ',406 'Ĺ', 'ĺ', 'Ä»', 'ļ', 'Ľ', 'ľ', 'Ä¿', 'Å', 'Å', 'Å', 'Ð', 'л', 'Î', 'λ',407 'Ç', 'Ç', 'Ç',408 'á¹', 'á¹', 'Ð', 'м', 'Î', 'μ',409 'Å', 'Å', 'Å
', 'Å', 'Å', 'Å', 'Ã', 'ñ', 'Å', 'Å', 'Å', 'Ð', 'н', 'Î', 'ν',410 'Ç', 'Ç', 'Ç',411 'Ã', 'ò', 'Ã', 'ó', 'Ã', 'ô', 'Ã', 'õ', 'Ã', 'ö', 'Å', 'Å', 'Å', 'Å', 'Ã', 'ø', 'Å', 'Å', 'Ǿ', 'Ç¿', 'Ð', 'о', 'Î', 'ο', 'Ω', 'Ï', 'á»', 'á»', 'á»', 'á»', 'á»', 'á»', 'á»', 'Æ¡', 'á»', 'á»', 'ợ', 'á»', 'ỡ', 'á»', 'á»', 'á»', 'á»', 'á»', 'á»', 'á»', 'Æ ', 'á»', 'á»', 'Ợ', 'á»', 'á» ',412 'Å', 'Å',413 'á¹', 'á¹', 'Ð', 'п', 'Î ', 'Ï',414 'Å', 'Å', 'Å', 'Å', 'Å', 'Å', 'Ð ', 'Ñ', 'Ρ', 'Ï', 'Ψ', 'Ï',415 'Å', 'Å', 'Å', 'Å', 'Å ', 'Å¡', 'Å', 'Å', 'á¹ ', 'ṡ', 'Å¿', 'Ã', 'С', 'Ñ', 'Ш', 'Ñ', 'Щ', 'Ñ', 'Σ', 'Ï', 'Ï',416 'Å¢', 'Å£', 'Ť', 'Å¥', 'Ṫ', 'ṫ', 'Ŧ', 'ŧ', 'Ã', 'þ', 'Т', 'Ñ', 'Ц', 'Ñ', 'Î', 'θ', 'Τ', 'Ï',417 'Ã', 'ù', 'Ã', 'ú', 'Ã', 'û', 'Ũ', 'Å©', 'Ã', 'ü', 'Å®', 'ů', 'Ū', 'Å«', 'Ŭ', 'Å', 'Ų', 'ų', 'Å°', 'ű', 'У', 'Ñ', 'ụ', 'ủ', 'Æ°', 'ừ', 'ứ', 'á»±', 'á»', 'ữ', 'Ụ', 'Ủ', 'Ư', 'Ừ', 'Ứ', 'á»°', 'Ử', 'á»®',418 'Ð', 'в', 'Î', 'β',419 'áº', 'áº', 'áº', 'áº', 'Å´', 'ŵ', 'áº', 'áº
',420 'Î', 'ξ',421 'Ỳ', 'ỳ', 'Ã', 'ý', 'Ŷ', 'Å·', 'Ÿ', 'ÿ', 'Ð', 'й', 'Ы', 'Ñ', 'Ю', 'Ñ', 'Я', 'Ñ', 'Î¥', 'Ï
', 'ỵ', 'á»·', 'ỹ', 'á»´', 'Ỷ', 'Ỹ',422 'Ź', 'ź', 'Ž', 'ž', 'Å»', 'ż', 'Ð', 'з', 'Î', 'ζ',423 'Ã', 'æ', 'Ǽ', 'ǽ', 'а', 'Ð',424 'Ñ'425 );426 $pretty = array(427 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'A', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'a', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A', 'A',428 'B', 'b', 'B', 'b',429 'C', 'c', 'C', 'c', 'C', 'c', 'C', 'c', 'C', 'c', 'CH', 'ch', 'CH', 'ch',430 'D', 'd', 'D', 'd', 'D', 'd', 'D', 'd', 'D', 'd', 'D', 'd', 'D', 'd',431 'DZ', 'Dz', 'dz', 'DZ', 'Dz', 'dz',432 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'E', 'e', 'e', 'e', 'e', 'e', 'e', 'e', 'e', 'e', 'E', 'E', 'E', 'E', 'E', 'E', 'E', 'E',433 'F', 'f', 'f', 'F', 'f', 'F', 'f',434 'fi', 'fl',435 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g', 'G', 'g',436 'H', 'h', 'H', 'h', 'ZH', 'zh', 'H', 'h',437 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'I', 'i', 'i', 'i', 'I', 'I',438 'IJ', 'ij',439 'J', 'j',440 'K', 'k', 'K', 'k', 'K', 'k', 'K', 'k', 'K', 'k',441 'L', 'l', 'L', 'l', 'L', 'l', 'L', 'l', 'L', 'l', 'L', 'l', 'L', 'l',442 'LJ', 'Lj', 'lj',443 'M', 'm', 'M', 'm', 'M', 'm',444 'N', 'n', 'N', 'n', 'N', 'n', 'N', 'n', 'n', 'N', 'n', 'N', 'n', 'N', 'n',445 'NJ', 'Nj', 'nj',446 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'O', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'o', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O', 'O',447 'OE', 'oe',448 'P', 'p', 'P', 'p', 'P', 'p', 'PS', 'ps',449 'R', 'r', 'R', 'r', 'R', 'r', 'R', 'r', 'R', 'r',450 'S', 's', 'S', 's', 'S', 's', 'S', 's', 'S', 's', 's', 'ss', 'S', 's', 'SH', 'sh', 'SHCH', 'shch', 'S', 's', 's',451 'T', 't', 'T', 't', 'T', 't', 'T', 't', 'T', 't', 'T', 't', 'TS', 'ts', 'TH', 'th', 'T', 't',452 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'U', 'u', 'u', 'u', 'u', 'u', 'u', 'u', 'u', 'u', 'U', 'U', 'U', 'U', 'U', 'U', 'U', 'U',453 'V', 'v', 'V', 'v',454 'W', 'w', 'W', 'w', 'W', 'w', 'W', 'w',455 'X', 'x',456 'Y', 'y', 'Y', 'y', 'Y', 'y', 'Y', 'y', 'Y', 'y', 'Y', 'y', 'YU', 'yu', 'YA', 'ya', 'Y', 'y', 'y', 'y', 'y', 'Y', 'Y', 'Y',457 'Z', 'z', 'Z', 'z', 'Z', 'z', 'Z', 'z', 'Z', 'z',458 'AE', 'ae', 'AE', 'ae', 'a', 'A',459 ''460 );461 $str = mb_strtolower(str_replace($unPretty, $pretty, $str), 'utf-8');462 $str = trim(preg_replace('/[^A-Z^a-z^0-9]+/', '-', $str), '-');463 return preg_replace('/-+/', '-', $str);464 }465 private function getAllCategories($categories, $parent_id = 0)466 {467 $output = array();468 if ($categories) {469 foreach ($categories->children() as $category) {470 $category_id = $category->Ðд->__toString();471 $category_name = $this->clear($category->Ðаименование->__toString());472 $output[$category_id] = array(473 'id' => $category_id,474 'name' => $category_name,475 'keyword' => $this->translit($category_name),476 'parent_id' => $parent_id,477 );478 $output += $this->getAllCategories($category->ÐÑÑппÑ, $category_id);479 }480 }481 return $output;482 }483 public function addPresets($data = array(), $attribute_id = 0)484 {485 $this->load->model('extension/module/Import1C');...
Standard_action_index_45c6abe7f6ca8941809595c26fb0fe55e36157e4.php
Source:Standard_action_index_45c6abe7f6ca8941809595c26fb0fe55e36157e4.php
...40$output4 .= '41plugin.';42$array5 = array (43);44$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array5)]);45$output4 .= '_';46$array6 = array (47);48$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('plugin.key', $array6)]);49$output4 .= ' {50 view {51 # cat=plugin.';52$array7 = array (53);54$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array7)]);55$output4 .= '_';56$array8 = array (57);58$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('plugin.key', $array8)]);59$output4 .= '/file; type=string; label=Path to template root (FE)60 templateRootPath = EXT:';61$array9 = array (62);63$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.extensionKey', $array9)]);64$output4 .= '/Resources/Private/Templates/65 # cat=plugin.';66$array10 = array (67);68$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array10)]);69$output4 .= '_';70$array11 = array (71);72$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('plugin.key', $array11)]);73$output4 .= '/file; type=string; label=Path to template partials (FE)74 partialRootPath = EXT:';75$array12 = array (76);77$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.extensionKey', $array12)]);78$output4 .= '/Resources/Private/Partials/79 # cat=plugin.';80$array13 = array (81);82$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array13)]);83$output4 .= '_';84$array14 = array (85);86$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('plugin.key', $array14)]);87$output4 .= '/file; type=string; label=Path to template layouts (FE)88 layoutRootPath = EXT:';89$array15 = array (90);91$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.extensionKey', $array15)]);92$output4 .= '/Resources/Private/Layouts/93 }94 persistence {95 # cat=plugin.';96$array16 = array (97);98$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array16)]);99$output4 .= '_';100$array17 = array (101);102$output4 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('plugin.key', $array17)]);103$output4 .= '//a; type=string; label=Default storage PID104 storagePid =105 }106}107';108return $output4;109};110$arguments1 = array();111$arguments1['each'] = NULL;112$arguments1['as'] = NULL;113$arguments1['key'] = NULL;114$arguments1['reverse'] = false;115$arguments1['iteration'] = NULL;116$array3 = array (117);$arguments1['each'] = $renderingContext->getVariableProvider()->getByPath('extension.plugins', $array3);118$arguments1['as'] = 'plugin';119$output0 .= TYPO3Fluid\Fluid\ViewHelpers\ForViewHelper::renderStatic($arguments1, $renderChildrenClosure2, $renderingContext);120$output0 .= '121';122// Rendering ViewHelper TYPO3Fluid\Fluid\ViewHelpers\ForViewHelper123$renderChildrenClosure19 = function() use ($renderingContext, $self) {124$output21 = '';125$output21 .= '126module.';127$array22 = array (128);129$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array22)]);130$output21 .= '_';131$array23 = array (132);133$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('backendModule.key', $array23)]);134$output21 .= ' {135 view {136 # cat=module.';137$array24 = array (138);139$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array24)]);140$output21 .= '_';141$array25 = array (142);143$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('backendModule.key', $array25)]);144$output21 .= '/file; type=string; label=Path to template root (BE)145 templateRootPath = EXT:';146$array26 = array (147);148$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.extensionKey', $array26)]);149$output21 .= '/Resources/Private/Backend/Templates/150 # cat=module.';151$array27 = array (152);153$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array27)]);154$output21 .= '_';155$array28 = array (156);157$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('backendModule.key', $array28)]);158$output21 .= '/file; type=string; label=Path to template partials (BE)159 partialRootPath = EXT:';160$array29 = array (161);162$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.extensionKey', $array29)]);163$output21 .= '/Resources/Private/Backend/Partials/164 # cat=module.';165$array30 = array (166);167$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array30)]);168$output21 .= '_';169$array31 = array (170);171$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('backendModule.key', $array31)]);172$output21 .= '/file; type=string; label=Path to template layouts (BE)173 layoutRootPath = EXT:';174$array32 = array (175);176$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.extensionKey', $array32)]);177$output21 .= '/Resources/Private/Backend/Layouts/178 }179 persistence {180 # cat=module.';181$array33 = array (182);183$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('extension.shortExtensionKey', $array33)]);184$output21 .= '_';185$array34 = array (186);187$output21 .= call_user_func_array( function ($var) { return (is_string($var) || (is_object($var) && method_exists($var, '__toString')) ? htmlspecialchars((string) $var, ENT_QUOTES) : $var); }, [$renderingContext->getVariableProvider()->getByPath('backendModule.key', $array34)]);188$output21 .= '//a; type=string; label=Default storage PID189 storagePid =190 }191}192';193return $output21;194};195$arguments18 = array();196$arguments18['each'] = NULL;197$arguments18['as'] = NULL;198$arguments18['key'] = NULL;199$arguments18['reverse'] = false;200$arguments18['iteration'] = NULL;201$array20 = array (...
__toString
Using AI Code Generation
1$extension = new Extension();2echo $extension;3$extension = new Extension();4echo $extension;5$extension = new Extension();6echo $extension;7$extension = new Extension();8echo $extension;9$extension = new Extension();10echo $extension;11$extension = new Extension();12echo $extension;13$extension = new Extension();14echo $extension;15$extension = new Extension();16echo $extension;17$extension = new Extension();18echo $extension;19$extension = new Extension();20echo $extension;21$extension = new Extension();22echo $extension;23$extension = new Extension();24echo $extension;25$extension = new Extension();26echo $extension;27$extension = new Extension();28echo $extension;29$extension = new Extension();30echo $extension;31$extension = new Extension();32echo $extension;33$extension = new Extension();34echo $extension;35$extension = new Extension();36echo $extension;
__toString
Using AI Code Generation
1$ext = new extension();2echo $ext;3$ext = new extension();4echo $ext;5$ext = new extension();6echo $ext;7$ext = new extension();8echo $ext;9$ext = new extension();10echo $ext;11$ext = new extension();12echo $ext;13$ext = new extension();14echo $ext;15$ext = new extension();16echo $ext;17$ext = new extension();18echo $ext;19$ext = new extension();20echo $ext;21$ext = new extension();22echo $ext;23$ext = new extension();24echo $ext;25$ext = new extension();26echo $ext;27$ext = new extension();28echo $ext;29$ext = new extension();30echo $ext;31$ext = new extension();32echo $ext;33$ext = new extension();34echo $ext;35$ext = new extension();36echo $ext;
__toString
Using AI Code Generation
1$object = new extension();2echo $object;3$object = new extension();4echo $object;5$object = new extension();6echo $object;7$object = new extension();8echo $object;9$object = new extension();10echo $object;11$object = new extension();12echo $object;13$object = new extension();14echo $object;15$object = new extension();16echo $object;17$object = new extension();18echo $object;19$object = new extension();20echo $object;21$object = new extension();22echo $object;23$object = new extension();24echo $object;25$object = new extension();26echo $object;27$object = new extension();28echo $object;29$object = new extension();30echo $object;31$object = new extension();32echo $object;33$object = new extension();34echo $object;35$object = new extension();36echo $object;
__toString
Using AI Code Generation
1$obj=new Myclass();2echo $obj;3$obj=new Myclass();4echo $obj;5$obj=new Myclass();6echo $obj;
__toString
Using AI Code Generation
1$ext = new extension();2$ext->setExt(1234);3echo $ext;4$ext = new extension();5$ext->setExt(1234);6echo $ext;7$ext = new extension();8$ext->setExt(1234);9echo $ext;10$ext = new extension();11$ext->setExt(1234);12echo $ext;13$ext = new extension();14$ext->setExt(1234);15echo $ext;16$ext = new extension();17$ext->setExt(1234);18echo $ext;19$ext = new extension();20$ext->setExt(1234);21echo $ext;22$ext = new extension();23$ext->setExt(1234);24echo $ext;25$ext = new extension();26$ext->setExt(1234);27echo $ext;28$ext = new extension();29$ext->setExt(1234);30echo $ext;31$ext = new extension();32$ext->setExt(1234);33echo $ext;34$ext = new extension();35$ext->setExt(1234);36echo $ext;37$ext = new extension();38$ext->setExt(1234);39echo $ext;40$ext = new extension();41$ext->setExt(1234);
__toString
Using AI Code Generation
1$ext = new Extension();2echo $ext->getExt();3$ext = new Extension();4echo $ext;5$ext = new Extension();6echo $ext->getExt();7$ext = new Extension();8echo $ext->getExt();9$ext = new Extension();10echo $ext->getExt();11$ext = new Extension();12echo $ext->getExt();13$ext = new Extension();14echo $ext->getExt();15$ext = new Extension();16echo $ext->getExt();17$ext = new Extension();18echo $ext->getExt();19$ext = new Extension();20echo $ext->getExt();21$ext = new Extension();22echo $ext->getExt();23$ext = new Extension();24echo $ext->getExt();25$ext = new Extension();26echo $ext->getExt();27$ext = new Extension();28echo $ext->getExt();29$ext = new Extension();30echo $ext->getExt();31$ext = new Extension();32echo $ext->getExt();
__toString
Using AI Code Generation
1$ext = new extension();2echo $ext->name;3$ext = new extension();4echo $ext->name;5Related Posts: PHP __callStatic() Method6PHP __call() Method7PHP __get() Method8PHP __set() Method9PHP __isset() Method10PHP __unset() Method11PHP __debugInfo() Method12PHP __invoke() Method13PHP __clone() Method14PHP __wakeup() Method15PHP __sleep() Method16PHP __destruct() Method17PHP __construct() Method18PHP __set_state() Method19PHP __autoload() Method20PHP __halt_compiler() Method21PHP __dir() Method22PHP __file() Method23PHP __line() Method24PHP __function() Method25PHP __class() Method26PHP __method() Method27PHP __namespace() Method28PHP __trait() Method29PHP __closure() Method30PHP __invoke() Method31PHP __call() Method32PHP __callStatic() Method33PHP __get() Method34PHP __set() Method35PHP __isset() Method36PHP __unset() Method37PHP __debugInfo() Method38PHP __sleep() Method39PHP __wakeup() Method40PHP __clone() Method41PHP __destruct() Method42PHP __construct() Method43PHP __set_state() Method44PHP __autoload() Method45PHP __halt_compiler() Method46PHP __dir() Method47PHP __file() Method48PHP __line() Method49PHP __function() Method50PHP __class() Method51PHP __method() Method52PHP __namespace() Method53PHP __trait() Method54PHP __closure() Method
__toString
Using AI Code Generation
1$ext = new extension();2$ext->setExt('php');3echo $ext;4$ext->setExt('html');5echo $ext;6$ext->setExt('js');7echo $ext;8$ext = new extension();9$ext->php();10$ext->html();11$ext->js();12extension::php();13extension::html();14extension::js();15PHP __toString() Method16PHP __toString() Method Syntax17public function __toString()18PHP __toString() Method Example19$ext = new extension();20$ext->setExt('php');21echo $ext;22$ext->setExt('html');23echo $ext;24$ext->setExt('js');25echo $ext;26$ext = new extension();27$ext->php();28$ext->html();29$ext->js();30extension::php();31extension::html();32extension::js();33PHP __call() Method34PHP __call() Method Syntax35public function __call($name, $arguments)36PHP __call() Method Example37$ext = new extension();38$ext->setExt('php');39echo $ext;40$ext->setExt('html');41echo $ext;42$ext->setExt('js');43echo $ext;44$ext = new extension();45$ext->php();46$ext->html();47$ext->js();
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Execute automation tests with __toString on a cloud-based Grid of 3000+ real browsers and operating systems for both web and mobile applications.
Test now for FreeGet 100 minutes of automation test minutes FREE!!