Sto cercando un modo per limitare una stringa in php e aggiungere ... alla fine se la stringa era troppo lunga.Lunghezza stringa limite
risposta
Si può usare qualcosa di simile al di sotto:
if (strlen($str) > 10)
$str = substr($str, 0, 7) . '...';
Immagino che non pensassi che potrebbe saltare i suoi compiti di lettura. – dlamblin
Scusate, non l'ho considerato. Quali sono le regole per i compiti? Oh e aspetta, ho appena notato, il mio codice non funziona nemmeno correttamente;) – bramp
È solo una regola di community: http://meta.stackexchange.com/questions/10811/how-to-ask-and-answer -homework-questions – dlamblin
You might want to take a look at this answer se non si desidera dividere le parole.
Se non ti interessa separare le parole, usa semplicemente lo php substr function.
Fai un po 'di compiti con lo php online manual's string functions. Ti consigliamo di utilizzare strlen
in un contesto di confronto, substr
tagliarla se è necessario, e l'operatore di concatenazione con "..."
o "…"
troncare una stringa fornito dal limite massimo senza rompere la parola usa questo:
/**
* truncate a string provided by the maximum limit without breaking a word
* @param string $str
* @param integer $maxlen
* @return string
*/
public static function truncateStringWords($str, $maxlen)
{
if (strlen($str) <= $maxlen) return $str;
$newstr = substr($str, 0, $maxlen);
if (substr($newstr, -1, 1) != ' ') $newstr = substr($newstr, 0, strrpos($newstr, " "));
return $newstr;
}
da php 4.0.6 , C'è una funzione per la stessa identica cosa
funzione mb _ strimwidth può essere utilizzato per il vostro requisito
<?php
echo mb_strimwidth("Hello World", 0, 10, "-yahooo!-");
//Hello W-yahooo!-
?>
Essa ha ancora più opzioni, però, qui è la documentazione per questo mb_strimwidth
La funzione wordwrap() può anche essere utile: http://www.w3schools.com/php/func_string_wordwrap.asp –
Ma personalmente, preferisco usare: $ s = preg_replace ('/ \ s +? (\ S +)? $/',' ', substr ($ s, $ START, $ LIMIT)); –
@CyrilJacquart è meglio evitare l'uso di espressioni regolari dove mai non è necessario. –
In un altro modo per limitare una stringa in php e aggiungere testo readmore o come '...' utilizzando il codice sottostante
if (strlen(preg_replace('#^https?://#', '', $string)) > 30) {
echo substr(preg_replace('#^https?://#', '', $string), 0, 35).'…';
}
In laravel, v'è una stringa util della funzione di questo, ed è implementato in questo modo:
public static function limit($value, $limit = 100, $end = '...')
{
if (mb_strwidth($value, 'UTF-8') <= $limit) {
return $value;
}
return rtrim(mb_strimwidth($value, 0, $limit, '', 'UTF-8')).$end;
}
$ value = str_limit; (, 7 'Questa stringa è molto molto lungo.')
// Questa st ...
- 1. Fonte limite di lunghezza linea
- 2. testo limite jquery per lunghezza
- 3. Limite lunghezza variabile carattere PostgreSQL
- 4. PHP preg_match lunghezza 3276 limite
- 5. Lunghezza limite dell'array in PHP
- 6. Node.js HTTP Ottieni limite lunghezza URL
- 7. Limite lunghezza testo nella registrazione logback
- 8. Limite di lunghezza sui parametri JSON sulla richiesta GET
- 9. Perché c'è un limite di lunghezza all'eval di Python?
- 10. facebook lunghezza stringa id
- 11. C lunghezza stringa dinamica
- 12. Query funzione lunghezza stringa in Solr
- 13. Limite di caratteri di una stringa di stringa javascript
- 14. "[NSbigMutableString substringWithRange:]: Intervallo {0, 10} fuori limite; lunghezza stringa 9" errore con Annulla
- 15. Qual è il limite di lunghezza della stringa del filtro LDAP in Active Directory?
- 16. lunghezza della stringa tra puntatori
- 17. Ordine ElasticSearch per lunghezza stringa
- 18. Lunghezza massima predefinita stringa xsd
- 19. Creazione stringa C# (lunghezza specificata)
- 20. Form HTML multipart - lunghezza massima della stringa "boundary"?
- 21. Come aggirare il limite di lunghezza della riga di comando?
- 22. C'è un limite alla lunghezza dei _id in MongoDB
- 23. come aumentare Apache 2 uri limite di lunghezza
- 24. Limite dimensioni indice 900 byte in lunghezza carattere
- 25. Evitare Memcache limite "1000000 byte di lunghezza" sui valori
- 26. Perché limite di lunghezza dei valori di colonne in MySQL
- 27. Qual è il limite della lunghezza di una proprietà javascript?
- 28. Esiste un limite per la lunghezza della chiave per localStorage?
- 29. Java ha un limite alla lunghezza del nome della classe?
- 30. Esiste un limite di lunghezza HTTP Header pratico?
si potrebbe trovare [ 's ($ str) -> truncate ($ lunghezza)'] (https://github.com/delight-im/PHP-Str/ blob/8fd0c608d5496d43adaa899642c1cce047e076dc/src/Str.php # L233) o anche ['s ($ str) -> truncateSafely ($ length)'] (https://github.com/delight-im/PHP-Str/blob/8fd0c608d5496d43adaa899642c1cce047e076dc /src/Str.php#L246) utile, come trovato in [questa libreria standalone] (https://github.com/delight-im/PHP-Str). – caw