2013-07-29 2 views
0

나는 고등학교와 저등학교에서 답을 찾지 만 어디서나 찾을 수는 없습니다.임의의 문자열을 한 번만 반환하는 방법은 무엇입니까?

<?php 
$f_contents = file("x.txt"); 
$line = $f_contents[rand(0, count($f_contents) - 1)]; 
echo($line); 
?> 

현재 모든 페이지로드마다 임의의 결과가 표시되지만 문자열을 한 번만 반환해야합니다. 저는 Wordpress를 사용하고 있습니다. 따라서 페이지가 생성 될 때만이 작업을 수행하는 것이 좋습니다.

아이디어가 있으십니까? 당신이 만들어 질 경우 페이지에 메타 정보의 조각을 추가 할 필요가

http://php.net/manual/en/function.uniqid.php

+0

를 한 번만 모든 페이지가로드 사이? –

+1

이 코드를 어디에 넣었습니까? 어떤 파일? – Konsole

+0

예, 한 번만 Jason입니다. 코드는 페이지 콘텐츠 내에 있으며 목록 안에 있습니다. 이 파일은 링크가 하나씩있는 텍스트 문서입니다. – user2630574

답변

2

당신은 uniqid() 기능에 내장 된 PHP를 사용할 수 있습니다.

자신 만의 플러그인을 만들면됩니다.

+1

이것은 OP의 파일에서로드하지 않을 것입니다! – AlexP

0

:

0

게시물 ID가 포함 된 옵션을 추가하고이 옵션이 아직없는 경우에만 설정하십시오.

function random_option($id, $file){ 

if(get_option("rand_option".$id)) 
    return get_option("rand_option".$id); 

$f_contents = file($file); 
$value = $f_contents[rand(0, count($f_contents) - 1)]; 
add_option("rand_option".$id, $value); 

return $value; 

} 

다음 전화 :

echo random_option(get_the_ID(), "file.txt"); 
+0

또는 모든 페이지로드에서 한 번만 반환하려는 경우 첫 번째 반환 값을 0으로 설정합니다. – Brian

관련 문제