Nie jestem pewien, jak wyrazić to pytanie, ale dam przykład. $ string = 'Hej, $ imię. Jak się masz?'; Kiedy zamieszczam ten ciąg, nazwa $ nie zmienia się. Jak mogę to zrobić, abym mógł umieścić coś w stylu + nazwa +, aby zmienić nazwę. Próbowałem wyszukiwać, ale nie wiem, czego szukać, więc nie mam szczęścia. to jest naprawdę proste, ale po prostu gaśnie. Dziękijak zamienić symbol zastępczy w łańcuch?
Odpowiedz
Możesz używać posiadaczy miejsc i str_replace
. Lub użyj wbudowanego PHP sprintf
i użyj %s
. (I od wersji 4.0.6 możesz zamienić kolejność argumentów, jeśli chcesz).
$name = 'Alica';
// sprintf method:
$format = 'Hello, %s!';
echo sprintf($format, $name); // Hello, Alica!
// replace method:
$format = "Hello, {NAME}!";
echo str_replace("{NAME}", $name, $format);
I dla każdego, zastanawiając się, zrozumiałem, że jest kłopot templating ciąg, nie PHP zintegrowany konkatenacji/parsowania. Ja po prostu zakładamy utrzymanie takiej odpowiedzi się chociaż jak nadal nie jestem w 100% pewien intencji tego OP
to, czego szukałem, str_replace(); Dzięki. Nie mogłem tego do końca zrozumieć. –
@Alica: Nie ma problemu. A jeśli ta odpowiedź była pomocna, upewnij się, że ją akceptujesz (tak jak w przypadku innych zadawanych pytań. Zatwierdzenie poprzednich odpowiedzi nie tylko daje kredyt osobie, ale czyni ją zasobem dla przyszłych użytkowników, a także sprawia, że inni chcą Ci pomóc.). –
'A od wersji 4.0.6 ...' Mam nadzieję, że nie wspomniałeś o tym, ponieważ uważasz, że ludzie używają czegoś niższego niż PHP 4;) –
powinien być zawijania ciąg w cudzysłowach ("
) Jeśli chcesz zmienne zostać rozszerzona:
$name = "Alica";
$string = "Hey, $name. How are you?"; // Hey, Alica. How are you?
Czysto i prosto, świetnie. –
Trzecie rozwiązanie, nie lepsze ani gorsze niż wyżej wymienione, to powiązanie:
echo 'Hello '. $name .'!!!';
I zawsze był fanem strtr
.
$ php -r 'echo strtr("Hi @name. The weather is @weather.", ["@name" => "Nick", "@weather" => "Sunny"]);'
Hi Nick. The weather is Sunny.
Kolejną zaletą jest możliwość zdefiniowania różnych typów prefiksów symboli zastępczych. Tak robi Drupal; @
wskazuje ciąg znaków, który ma być unikany jako bezpieczny do wyprowadzenia na stronę internetową (aby uniknąć ataków wtrysku). Polecenie format_string zapętla nad Twoimi parametrami (takimi jak @name
i @weather
), a jeśli pierwszy znak to @
, to użyje on wartości check_plain
.
To jest dobra odpowiedź, ponieważ pozwala też uniknąć pułapek na spotkaniach str_replace: http://php.net/manual/en/function.strtr. php # 117169 –
- 1. Symbol zastępczy w IE7
- 2. HTML5 jako symbol zastępczy
- 3. Python Gtk.Entry symbol zastępczy
- 4. Jak zmienić symbol zastępczy w select2?
- 5. Jak zamienić znak w łańcuch w Javie?
- 6. Java - symbol zastępczy pola tekstowego
- 7. Jak zamienić wiele elementów w łańcuch? Ciąg
- 8. Jak zamienić przestrzeń ideograficzną w łańcuch PHP?
- 9. Symbol zastępczy dla textarea? (ExtJS)
- 10. Jak dodać symbol zastępczy do wpisu w tkinter?
- 11. Glide-4.0.0 Brakujący symbol zastępczy, błąd, GlideApp
- 12. Jak zamienić łańcuch w istniejącym pliku w Perlu?
- 13. Jak zamienić pusty łańcuch na wartość pustą w java?
- 14. Jak zamienić zmienną w łańcuchu na PHP?
- 15. Jak dodać niewybaczalny i dostosowywalny symbol zastępczy do pola wyboru
- 16. HTML5 Symbol zastępczy na Textarea za pośrednictwem jQuery w IE10
- 17. Symbol zastępczy nie znika po ustawieniu ostrości w Chrome
- 18. Łańcuch JavaScript/jQuery Zastąp symbol Regex
- 19. Symbol zastępczy i wpisany tekst nie wyrównywanie w UITextField
- 20. Symbol zastępczy/przykładowy w polu tekstowym dla użytkownika
- 21. Jak zmienić znak zastępczy selectize.js?
- 22. TensorFlow, obiekt "module" nie ma atrybutu "symbol zastępczy"
- 23. Symbol zastępczy tła/obrazu podczas oczekiwania na załadowanie pełnego obrazu?
- 24. Symbol zastępczy dla wybranej wtyczki dla pojedynczego wyboru nie działa
- 25. Pola wprowadzania tekstu JavaScript, które wyświetlają tekst instrukcji (symbol zastępczy).
- 26. Symbol zastępczy stylu różni się od wartości z best_in_place
- 27. Wykryj, czy typ wejścia = "data" obsługuje symbol zastępczy
- 28. Wyśrodkuj problem zastępczy w Androidzie
- 29. Jak wyświetlić symbol zastępczy (pusta opcja) w kontrolce select w Angular 2?
- 30. Jak zastąpić zastępczy w łańcuchu wzorkiem SimpleDateFormat
Podstawowa składnia PHP: http://php.net/manual/en/language.types.string.php –