thinkphp 前台和后台公用的函数怎么加载

thinkphp 前台和后台公用的函数怎么加载,第1张

这个问题有2个方面:
1,函数写在哪儿?
2,函数如何调用?
——————分割线————————
回答基于版本tp32
在目录结构的common下 添加functionphp
可查看链接
>方法很多,灵活运用,例如 1在模板中调用{$Thinksession} 2在标签直接编写php代码来判断$_SESSION 3在模板中写,然后在里面直接编写php代码来判断$_SESSION 4在Action中将$_SESSION变量通过assign()方法赋值给模板 5在自定义函数库中

U函数TP手册里面说的很详细啊: U方法的定义规则如下(方括号内参数根据实际应用决定): U('[分组/模块/ *** 作]参数' [,'参数','伪静态后缀','是否跳转','显示域名']) 如果不定义项目和模块的话 就表示当前项目和模块名称, 例子: U('User/add

11
#include <stdioh>
#include <stringh>
int main()
{
int i,n,len;
char str[200];
gets(str);
len=strlen(str);
for(i=0;i<len;i++)
{
if('a'<=str[i] && str[i]<='z')
str[i]-=32;
else if('A'<=str[i] && str[i]<='Z')
str[i]+=32;
}
puts(str);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
12
#include <stdioh>
#define N 3 // 可改 50
int main()
{
int i;
int score[N][3];
int s[3]={0,0,0};
printf("输入%d个学生3门课的成绩\n",N);
for(i=0;i<N;i++)
{
printf("输入第%d个学生3门课的成绩\n",i+1);
scanf("%d %d %d",&score[i][0],&score[i][1],&score[i][2]);
s[0]+=score[i][0];
s[1]+=score[i][1];
s[2]+=score[i][2];
}
printf("%d个学生3门课程的总成绩分别是:%d\t%d\t%d\n",N,s[0],s[1],s[2]);
printf("%d个学生3门课程的平均成绩分别是:%2f\t%2f\t%2f\n",N,s[0]10/N,s[1]10/N,s[2]
10/N);
return 0;
}
------------------------------------------------------------------------------------------------------------------------------------------
21
#include <stdioh>
float fmin(float a,float b)
{
if(a<b) return a;
else return b;
}
int main()
{
float f1,f2,min;
printf("请输入两个实数:\n");
scanf("%f %f",&f1,&f2);
min=fmin(f1,f2);
printf("其最小值是:%f\n",min);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
22
#include <stdioh>
#define N 10
float f_ave(int a[])
{
int i,sum=0;
float f;
for(i=0;i<N;i++) sum+=a[i];
f=sum10/N;
return f;
}
int main()
{
int i;
int sco[N];
float ave;
printf("请输入10名学生的成绩:\n");
for(i=0;i<N;i++) scanf("%d",&sco[i]);
ave=f_ave(sco);
printf("%d名学生的平均成绩是:%2f\n",N,ave);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
23
#include <stdioh>
int gcd(int a, int b)
{
int temp;
if (a < b)
{
temp=a;
a=b;
b=temp;
}
if (b == 0)
return a;
else
return gcd(b, a%b);
}
int lcm(int a, int b)
{
return ab/gcd(a, b);
}
int main()
{
int a,b;
printf("请输入2个整数:\n");
scanf("%d %d",&a,&b);
printf("其最小公倍数为:%d\n",lcm(a,b));
return 0;
}
--------------------------------------------------------------------------------------------------------------------------------------
24
#include <stdioh>
void d2b(int d)
{
int i,a,k=0;
int w[100];
a=d;
while(a>0)
{
w[k++]=a%2;
a/=2;
}
printf("%d的二进制表示为:",d);
for(i=k-1;i>=0;i--) printf("%d",w[i]);
printf("\n");
}
int main()
{
int a;
printf("请输入一个10进制数:\n");
scanf("%d",&a);
d2b(a);
return 0;
}
---------------------------------------------------------------------------------------------------------------------------------------
25
#include <stdioh>
void Y_1(int n)
{
int i;
double y=00;
for(i=1;i<=n;i++) y+=10/i;
printf("Y=1+1/2+1/3……+1/%d=%2lf\n",n,y);
}
void Y_2()
{
int i;
long sum=0;
for(i=1;i<99;i++) sum+=i(i+1)(i+2);
printf("Y=1×2×3+2×3×4+……+98×99×100=%ld\n",sum);
}
int main()
{
int n;
printf("请输入n值:\n");
scanf("%d",&n);
Y_1(n);
Y_2();
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------------------
31
#include <stdioh>
int n;
float f_ave(int a[])
{
int i,sum=0;
float ave=00;
for(i=0;i<n;i++) sum+=a[i];
ave=sum10/n;
return ave;
}
int main()
{
int i;
int array[200];
float ave;
printf("请输入数组的大小:\n");
scanf("%d",&n);
for(i=0;i<n;i++) scanf("%d",&array[i]);
ave=f_ave(array);
printf("%d个数组元素的平均数为:%2f\n",n,ave);
return 0;
}
32
#include <stdioh>
#include <stringh>
char str_conn(char a[],char b[])
{
int i,len,len1,len2;
char str[200];
len1=strlen(a);
len2=strlen(b);
len=len1+len2;
for(i=0;i<len1;i++) str[i]=a[i];
for(i=0;i<len2;i++) str[len1+i]=b[i];
str[len]='\0';
return str;
}
int main()
{
int i;
char str1[100],str2[100],str;
printf("请输入第一个字符串:\n");
scanf("%s",str1);
printf("请输入第二个字符串:\n");
scanf("%s",str2);
str=str_conn(str1,str2);
printf("连接后的字符串为:%s\n",str);
return 0;
}
34
#include <stdioh>
int main()
{
int i,j,n,sum,temp;
sum=0;
printf("请输入数组的阶数:\n");
scanf("%d",&n);
printf("请输入%d%d个数组元素:\n",n,n);
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&temp);
if(i==j) sum+=temp;
}
}
printf("数组的主对角元素之和是:%d\n",sum);
return 0;
}
35
#include <stdioh>
#include <stringh>
int countc(char s[])
{
int i,n,len;
len=strlen(s);
n=0;
for(i=0;i<len;i++)
{
if('A'<=s[i] && s[i]<='Z') n++;
}
return n;
}
int main()
{
int n;
char str[200];
printf("请输入一个字符串:\n");
gets(str);
n=countc(str);
printf("字符串中大写字母的个数是:%d\n",n);
return 0;
}
36
#include <stdioh>
#include <stringh>
void f(int x,int y,int z)
{
float rst=00;
if(x==y && z==y)
{
printf("非法计算,分母为0!\n");
}
else
{
rst=(x+y)10/(x-y)+(z+y)10/(z-y);
printf("f(x,y,z)=:%2f\n",rst);
}
}
int main()
{
int x,y,z;
printf("请输入X,Y,Z:\n");
scanf("%d %d %d",&x,&y,&z);
f(x,y,z);
return 0;
}
37
#include <stdioh>
#include <stringh>
int ask_age(int n)
{
if(n==1) return 10;
else return ask_age(n-1)+2;
}
int main()
{
int n,age;
printf("请输入求第几位学生的年龄:\n");
scanf("%d",&n);
age=ask_age(n);
printf("第%d位学生的年龄为:%d\n",n,age);
return 0;
}
----------------------------------------------------------------------------------------------------------------------------
41
#include <stdioh>
int main()
{
int a,b,t;
int p,q,tp;
printf("请输入两个int变量:\n");
scanf("%d %d",&a,&b);
p=&a;
q=&b;
{ // 交换 p,q
tp=p;
p=q;
q=tp;
}
{ // 交换p,q所指变量
t=p;
p=q;
q=t;
}
printf("交换后两个变量是:%d %d\n",a,b);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------------
42
#include <stdioh>
int main()
{
int i,m,n,p1,p2;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
printf("输入p,q指向数组元素的下标:\n");
scanf("%d %d",&p1,&p2);
m=(p1+p2)/2;
printf("p和q的中点r指向:a[%d],其值为%d\n",m,a[m]);
return 0;
}
-----------------------------------------------------------------------------------------------------------------------
51
#include <stdioh>
void s(int a[],int n)
{
int i,sum=0;
int p=a;
float ave;
for(i=0;i<n;i++)
{
sum+=p;
p++;
}
ave=sum10/n;
printf("数组的平均数是:%2f\n",ave);
}
int main()
{
int i,n;
int a[100];
printf("请输入数组的大小:\n");
scanf("%d",&n);
printf("输入%d个数组元素:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
s(a,n);
return 0;
}
--------------------------------------------------------------------------------------------------------
52
#include <stdioh>
int main()
{
int k;
char str[200],s;
printf("请输入一个字符串:\n");
gets(str);
s=str;
k=0;
while(s!='\0')
{
k++;
s++;
}
printf("字符串的长度是:%d\n",k);
return 0;
}
-------------------------------------------------------------------------------------------------------------------
53
#include <stdioh>
int main()
{
int i;
float a[102],min,max;
printf("请输入100个实数:\n");
for(i=0;i<100;i++) scanf("%f",&a[i]);
min=a;
max=a;
for(i=1;i<100;i++)
{
if((a+i)>max) max=a+i;
if((a+i)<min) min=a+i;
}
printf("100个实数的最大值是:%2f 最小值是:%2f\n",max,min);
return 0;
}
---------------------------------------------------------------------------------------------------------------
54
#include <stdioh>
#define n 10
void sort(int a[])
{
int i,j,tp;
int p=a;
for(i=0;i<n-1;i++)
{
for(j=i+1;j<n;j++)
{
if((p+i) > (p+j))
{
tp=(p+i);
(p+i)=(p+j);
(p+j)=tp;
}
}
}
}
int main()
{
int i;
int a[102],min,max;
printf("请输入%d个整数:\n",n);
for(i=0;i<n;i++) scanf("%d",&a[i]);
sort(a);
printf("排序后序列为:\n");
for(i=0;i<10;i++) printf("%d ",a[i]);
printf("\n");
return 0;
}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13355144.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-20
下一篇 2023-07-20

发表评论

登录后才能评论

评论列表(0条)

保存