У меня была такая же проблема и она была решена, возможно, не лучшим образом, но она работает. Я заменил все разрывы строк до того, как достиг своего реального соответствия:
mystring= Regex.Replace(mystring, "\r\n", "")
Я манипулирую HTML, поэтому разрывы строк для меня в этом случае не имеют большого значения.
Я попробовал все вышеперечисленные предложения без везения, я использую .Net 3.5 FYI
Есть много проблем с кодом. Из того, что я вижу в вашем коде, у вас есть таблица внутри тела и в конце закрыта только одна таблица. Во-вторых, вы также пытаетесь вставить тд в другой тд, что не правильно. Посетите сайт разработчика mozilla для получения дополнительной информации об использовании таблиц HTML.
//Use the functions of the client, the params of the function are in
//the associative array
$params = array('customerid' => '1532');
$response = $soapclient->ca_customer_products($params);
echo '<table style="border-style: solid; border-width:1px;"><tbody><tr><th>Product</th><th>Naam</th> <th>Prijs</th><th>Qte</th></tr>';
foreach($response->list->element as $product) {
if($product->stock > 0) {
echo '<tr>';
echo '<td style="display: flex; border: 1px solid black;">';
//echo '<td>';
echo '<img src="' . $product->url . '" class="php_image" style="width: 15%; height: 15%;"/>';
//echo '<img style="width: 15%;">';
//echo '</td>';
print_r($product->description);
echo "<p style='color:green;'>".$product->price1."</p>";
echo "<p style='color:red; text-decoration: line-through'>".$product->price2."</p>";
print_r($product->price1);
print_r($product->price2);
print_r($product->stock);
echo '</td></tr>';
}
}
echo '</tbody></table>';
Вы неправильно закрываете свои теги. Также ознакомьтесь с документами , как упомянул @christopher_bincom.
Сначала я вижу проблему с этими строками:
echo '<table><tbody><tr><th>Product</th><th>Naam</th> <th>Prijs</th><th>Qte</th></tr>';
echo '<table style="border-style: solid; border-width:1px;">';
Поскольку вы просто закрываете свой первый СТОЛ в конце, но не другой внутри:
echo '</tbody></table>';