¿Cómo puedo seleccionar mi propio texto dentro de un elemento, excepto las etiquetas incluidas, con phpQuery?
<p><!-- begin snippet: js hide: false console: true babel: false --></p>
<p><!-- language: lang-js --></p>
<pre><code>function getPrice() {
return $('.product__element').contents().eq(0).text();
}
console.log(getPrice()); //returns **A**.
</code></pre>
<p><!-- language: lang-html --></p>
<pre><code><script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>
<div class="product__element">
A
<span>B</span>
</div>
</code></pre>
<p><!-- end snippet --></p>
<p>https://jsfiddle.net/sb67Lwpx/</p>
<p>But <strong>phpQuery</strong></p>
<pre><code>pq('.product__element')->contents()->eq(0)->text();
</code></pre>
<p>returns <strong>A B</strong>.</p>
<p>How to get only <strong>A</strong> in phpQuery ?
HTML can not be edited.</p>
davy.ai
Para obtener solo “A” en phpQuery, puedes modificar el código de la siguiente manera:
Este código filtra solo los nodos de texto y devuelve el primero, que contiene el valor deseado de “A”.