substr和strlen解释

时间:2012-02-07 10:23:34

标签: php html substr strlen

好的,这个问题与我以前的问题有关。

如果我设置 $ textlimit = 500; ,则会将文字限制为500个字符。

有没有办法“避免”文本限制,然后点击功能加载其余部分?

例如,如果我设置:

$textpart = substr($fulltext, 0, 400);

$ textpart 只包含400个字符的字符串。

我的问题是,如何声明变量,它将包含超过500个字符的其余文本?

变量示例:

$fulltext //Contains full text, but is limited to 500 characters.
$textpart //Contains part of the text, substr 400 characters out of 500.
$textrest //This variable to "hold" rest of the text, after 400 characters of $textpart.

就像我在上一个问题中提到的那样,我想制作展开和折叠按钮,我现在知道如何做到这一点,但我不知道如何划分文本。

表格会是这样的:

  1. 此处随机文字(长度为400个字符)
  2. 随机图片展开
  3. 声明onclick函数I后,加载其余文本(超过500个字符)。
  4. 崩溃的随机图像
  5. 声明onclick函数崩溃后返回上一个状态 - 引用1。
  6. 我希望我以正确的方式解释我的问题。我真的很感激任何一种帮助,如果我可以选择的话,我想要对此如何进行基本的解释,因为我想要了解这一点,而不是复制/粘贴解决方案(它更容易,但我不会学到太多东西)。

    提前致谢。

3 个答案:

答案 0 :(得分:0)

$textrest = substr($fulltext, 400)

答案 1 :(得分:0)

$fulltext = substr($fulltext, 0, 500);
$textpart = substr($fulltext, 0, 400);
$textrest =  substr($fulltext,400,strlen ( $fulltext ));

答案 2 :(得分:0)

如果我理解正确,您希望向用户显示一个初始页面,该页面仅显示前X个字符,然后在用户点击文本时显示所有字符。

有三种策略可以做到这一点。从易到难:

  1. 输出缩短的文字并包含一个链接,该链接将重新加载整个页面,但带有全文
  2. 输出所有文本并使用css和JavaScript隐藏/显示任何溢出
  3. 输出缩短的文本并执行Ajax调用以加载额外的字符并附加
  4. 选项2和3需要使用客户端JavaScript,因此不是纯PHP解决方案。

    选项1是添加$_GET变量的问题,例如?expand=para1,您的网址,并通过$_GET['expand']扩展PHP中标识的文字。

    不要误以为PHP仍然在浏览器的页面上运行。只有JavaScript可以在网页上的浏览器中运行。 (我知道并非严格意义,但在现实中确实如此。)