字符串的 PHP 关联数组只返回第一个单词


php associative array of strings only returns first word

在这个关联数组中,我只有包含空格的文本字符串。 当我访问数组的元素来打印文本时,我只得到第一个单词。 如何检索带有空格的所有文本?

    $feast_description = array('Mother_of_God' => 'Recognition of the Blessed Virgin Mary as the Mother of Jesus who is the Son of God and is God Himself.',
    'Epiphany' => 'Recognition of Jesus by the Magi as one sent by God.',
    'Baptism_of the Lord' => 'Jesus asks of John the Baptist that he baptize Him in the Jordan river. This act was to teach us of the necessity of baptism to be washed clean of our corruption for admittance among God''s children and for salvation. This day God also revealed Jesus to be His Son.',
    'Presentation_of_the_Lord' => 'Jesus as first born of the Holy Family is presented at temple and consecrated to God.',
    'Ash_Wednesday' => 'Beginning of Lent the season of penance to make up for our sins and draw nearer to God in preparation for Easter.',
    'Holy_Thursday' => 'First feast of the Easter Triduum. We commemorate the Last Supper when Jesus began the Sacrament of the Eucharist.  On that day He also gave an example of service and of humility by washing the feet of His disciples.','Good_Friday' => 'Day of the Passion of Jesus when He was crucified and died to offer His life in reparation for our sins.  By giving up His earthly life as a sacrifice to God the Father, He earned for us divine life, eternal life with the Father in Heaven.',
    'Holy_Saturday' => 'A day of waiting between Good Friday and the Resurrection of the Lord on Easter Sunday morning.  On the vigil of Easter the Church celebrates a special liturgy which traces the history of salvation.',
    'Easter' => 'Jesus who was crucified three days earlier, went among the dead, descended into hell and returned to life victorious over death.  He won that victory for all mankind.  Upon the Resurrection of Jesus is founded the hope of every Christian that we too will conquer death.',
    'Ascension' => 'Jesus returns to the Father, having fulfilled His mission on earth, to teach us of the Father''s love, show us His commands, and teach us the way back to Him.  He did not linger in His earthly life to be our intercessor and our advocate at the right hand of the Father. By ascending to the Father Jesus secures our place with Him.  He returns to the Father, taking up with Him all of humanity and forever defeats the one who constantly seeks to separate us from our God.',
    'Pentecost' => 'Jesus promised that He would not leave us by ourselves as He returns to the Father.  He promised to send a paraclete, a helper, an advocate.  He does on Pentecost, He sends the Holy Spirit, to be with us in this new manner and to remain with us until the end of time.',
);

此数组元素

$feast_description['Mother_of_God']

仅返回单词 Recognition ,字符串中的第一个单词。

我用这样的 echo 语句在 <a> 标签的title中输出字符串。

echo ' '.$litweek.' week <a title='.$feast_description['Mother_of_God'].'>'.$litsea.'</a>&nbsp;&#8226;';

获取所有文本的正确方法是什么?

我认为您需要在括号之前丢失点,应该是这样的:

$feast_description['Mother_of_God']

试试这个:

foreach ($feast_description as $name => $text) {
    echo $name . " : " . $text . "<br/>";
}

数组元素周围缺少引号。HTML 必须指定为

echo ' '.$litweek.' week <a title="'.$feast_description['Mother_of_God'].'">'.$litsea.'</a>&nbsp;&#8226;';

$feast_description两边用双引号引起来。

您可能想尝试使用打印格式并传入值,而不是回显。 它使编写 html 和保持值分配整洁变得更加容易。

printf(' %s week <a title="%s">%s</a>&nbsp;&#8226;', 
    $litweek, $feast_description['Mother_of_God'], $litsea);